papervision3D(PV3D)の1.5で、
scene.removeChild(plane)しただけでは、ガベージコレクションの対象とならず、
メモリが解放されない現象を確認。
Planeクラス+MoveMaterialで3Dオブジェクトを作成している場合、
plane.material.bitmap.dispose();
(planeはPlaneクラスのインスタンス。materialはplaneクラスが保持するプロパティ)
を記述する事によってメモリの解放を確認出来ました。
papervision3D(PV3D)の1.5で、
scene.removeChild(plane)しただけでは、ガベージコレクションの対象とならず、
メモリが解放されない現象を確認。
Planeクラス+MoveMaterialで3Dオブジェクトを作成している場合、
plane.material.bitmap.dispose();
(planeはPlaneクラスのインスタンス。materialはplaneクラスが保持するプロパティ)
を記述する事によってメモリの解放を確認出来ました。
AS3でLoaderクラスを使って画像(gifやjpgなどのビットマップ)を読み込んだ場合、
loader.unload();
だけだとメモリが解放されない現象を確認した。
loaderで読み込んだのが画像だった場合、BitmapDataクラスの
disopse();
を実行する事により、メモリが解放されるのを確認しました。
具体的にはこんな感じ。
(変数loaderはLoaderクラスのインスタンス)
if (loader.content is Bitmap)
{
loader.content.bitmapData.dispose();
}
これでメモリが解放された。
メモリの確認は、下記サイトで使用容量が分かる関数を教わりました。
ASのガベージコレクトは参照カウント方式じゃなかった
http://www.imajuk.com/blog/archives/2008/04/as_2.html
どうもありがとうございます。
環境:
OSX 10.5
Flash CS3
onPress内でgetURL target="_blank"で指定すると、Firefoxのポップアップブロックが起動してしまう。
onRelease内でgetURL target="_blank"を指定すると、ポップアップブロックは起動しない。
何故?
http://un-q.net/2007/03/textfield.html
通常、swfとhtmlレイヤーを配置すると、swfが前面に出てしまう。
この現象を回避するために、
htmlレイヤーのスタイルにz-index:1以上を設定し、
swfを表示するときに、objectとembedのwmodeという属性にtransparentを指定する。
テキストのアウトラインを埋め込むか、スクリプトでマスクを制御する必要がある。
テキストフィールドをMC化し、同階層にマスクMCを配置する。
|-mask_mc
|-text_mc
|-text_txt
text_mc.setMask(mask_mc)
でマスクがかかる。
http://www.fumiononaka.com/TechNotes/Flash/FN0502002.html
ライブラリにある画像を右クリック→プロパティーでスムージングにチェックを入れる。
http://www.flash-jp.com/modules/newbb/viewtopic.php?topic_id=4872&forum=5
かなりきれいになる。
人が作ったflaファイルで、システムに無いフォントのまま、制作をしている場合、アルファの設定をしようと思っても上手くかからない。フォントをインストールするか、分解してアウトラインさせるかにする。
Flash Remotingを使う時などドメインを超えてデータを取得したい場合は、player7からcrossdomain.xmlファイルを
参照先のルートディレクトリに配置する必要がある。
参考
http://www.macromedia.com/jp/devnet/flash/articles/fplayer_security_print.html
この前調べたのにまた忘れてしまった。。。
テキストフィールドの名前.autoSize = true;
でダイナミックに伸縮可能。
htmlTextでタブ後の改行が出来ない?
==============================
<font color="#ff0000">赤字</font>
改行されるはず。
==============================
上記文字列ではhtmlTextで表示した時に改行されず1行で表示される。
対処法
終了タグ(</font>)の後ろに半角スペースを入れる事で改行が可能
なんでだろ。
文字列が記述してある外部ファイルがunicodeだからかな?
後でチェックしてみよう。