AS3(ActionScript3)
多次元配列から要素を取り出すとき、そのほとんどがnullやundefinedである場合の話。最初はtryを使って、もしnullやundefinedならnullアクセスのエラーがでるから、それがでるってことは要素がない、というふうにやっていた for(){ var target:Obj = null; t…
var obj:Obj; → var obj:Obj = null;で完全に初期化せよ try catchはエラーがでない分、普段ならでるはずのnullエラーがでなくて原因がつかみにくかった。 for(){ var obj:Obj;//★0 try{ obj = arr[i][j] as Obj; }catch(err:*){ } if(obj != null){//★1 //o…
Spriteを大量に配置すると、マウスイベントなんかを大量に発生させて重くするというのはなんとなくわかっていたが、Shapeも大量に配置すると重くなった。 移動させると描画するから重くなるというのはわかるが、今回は移動もさせてない。
BitmapDataには最大サイズがある これは仕様変更を引き起こしかねない重要な制約なため、設計時に知っておく必要がある。公式docによると、 AIR 1.5 および Flash Player 10 では、BitmapData オブジェクトの最大サイズは幅または高さが 8,192 ピクセルであ…
例えばbitmaoDataのサイズを変更するような場合、 newしなければならない。 bd = new BitmapData(8, 8, true, 0xFF00FF00); みたいに。ただ、これだけだと反映されないっぽい。 bmp.bitmapData = bd; のようにbmp.bitmapDataの参照も書き換えないとダメっぽ…