gihyoでのプログレッション特集4のサンプルでの疑問点
各シーンの閉じるボタンを表示リストに追加する際に、各シーンに割り当ててるページ(CastSprite)ではなく、SceneObject自体に追加している。
これは、閉じるボタンの戻り先を設定をする際、SceneObjectじゃないと、sceneId:progression.root.sceneIdが使えないから・・・でいいののか?
(CastSpriteはprogressionプロパティをもっていないので)
それでも、CastSpriteに閉じるボタンをおきたいときは、
progression.root.sceneIdをtraceすると中身は”/index”だったので、、、
var sId:SceneId = new SceneId(“/index”);とSceneIdのインスタンスを用意して
sceneId:sId;
としてあげればOKでした。
Tags: AS3, Flash, progression, 未解決
変数 = Math.min(Math.max(値 , 最小値) , 最大値);
例えば、
var randomNum:Number = Math.random()*100;
var maxNum:Number = 50;
var minNum:Number = 10;
var ans:Number = Math.min(Math.max(randomNum, minNum) , maxNum);
ただし、if文で作った方が処理的に速いらしい。
(Mathは遅いそうな)
Tags: AS2, AS3, Flash
並び変えを、任意の関数でルールが作れるようだ。
var myArray:Array = [10,5,2,34];
myArray.sort(compare);
function compare(a,b) {
if (a>b) {
return 1;
} else if (a<b) {
return -1;
} else {
return 0;
}
}
trace(myArray);//出力:2,5,10,34
Tags: AS3, Flash
コンストラクタに渡す引数は正の整数でなくてはならない。
var myBitmapData:BitmapData = new BitmapData(0,0);
//ランタイムエラー
しかし、ライブラリのビットマップにリンケージでクラス指定したものを呼び出すときは、0でもOK。
var myBitmapData:MyBitmapData = new MyBitmapData(0,0);
//エラー無し
Tags: AS3, Flash
- Boolean:false:trueまたはfalse
- int:0:32ビット符号付き整数
- NUll:型指定に用いることはできない:null
- Number:NaN:64ビット浮動小数点数
- String:null:16ビット文字列
- uint:0:32ビット符号無し整数
- void:undefined:undefined
- クラス:null:クラスのインスタンス
Tags: AS3, Flash
初期化されていないか、null代入された変数は型指定されていても、is演算子ではfalseを返す
var my_mc:MovieClip;
trace(my_mc);//出力:null
trace(my_mc is MovieClip);//出力:false
my_mc = new MovieClip();
trace(my_mc);//出力:MovieClip
trace(my_mc is MovieClip);//出力:true;
Tags: AS3, Flash
var i:int = 0;
var j:int = ++i;
trace(i,j);//出力:1 1
var i:int = 0;
var j:int = i++;
trace(i,j);//出力:1 0
var my_mc:MyClass = new MyClass();
trace(my_mc.root);//出力:null
addChild(my_mc);
trace(my_mc.root);//出力:[object MainTimeline]
DisplayObject.rootのまとめ
Tags: AS3, Flash
あるひとつのDisplayObjectは、FlashPlayer上のすべてのDisplayObjectContainerインスタンスの子リストの中にひとつしか存在しえない。
すでにあるDisplayObjectContainerの子リストとして登録されているDisplayObjectを、べつのDisplayObjectContainerの子リストとして登録すると、先に登録されていた方は子リストから削除される。
Tags: AS3, Flash
リスナー関数の引数にデフォルト値nullを設定しておく。
function eventFunc(e:Event = null):void{
trace(e);//出力:null
}
eventFunc();
Tags: AS3, Flash