Labo
Progression4でページ遷移
まだパブリックベータ版のProgression4ですが、仕事で使ってみることにしました。
ver3ではページ遷移の時に例えば下記のような書き方をしていました。
□キャストボタンクラス内のスクリプト
//シーンに移動した瞬間にイベント発生(シーン移動を監視)
addEventListener(CastEvent.STATUS_CHANGE, onEvent);
function onEvent(e:CastEvent):void {
//自分自身、もしくは孫シーンに移動してきた場合
if (isCurrent || isChild) {
//ボタン選択状態のエフェクト
Tweener.addTween( this, { alpha:1, time:1 } );
//ボタンカーソルを消す(指カーソルを消す)
buttonMode = false;
} else { //別のシーンに移動した場合
// ボタンを薄くする
Tweener.addTween( this, { alpha:0.5, time:1 } );
//ボタンカーソル復活(指カーソルを出す)
buttonMode = true;
}
}
・
・
・
//ロールオーバーメソッド
protected override function _onCastRollOver():void {
// 自分自身のシーンにいない場合にだけエフェクトをかける
if (!isCurrent) {
Tweener.addTween( this, { alpha:1, time:1 } );
}
}
Progression4では、「CastEvent」というイベントや「isCurrent」というプロパティがなくなったので、上記と同じような挙動にするには、例えば以下のような記述します。
//シーンに移動した瞬間にイベント発生(シーン移動を監視)
addEventListener(CastMouseEvent.CAST_STATE_CHANGE,onEvent);
function onEvent(e:CastMouseEvent):void {
//state(ステータス?)プロパティで、シーンIDなどの情報が取得できるが、どうやら番号によって意味づけがされているらしい
switch (state) {
//0:?
case 0 :{ }
//1:?
case 1 :{ }
//2:カレント(自分の)シーンに入ってきた場合
case 2 :
{
//ボタン選択状態のエフェクト
Tweener.addTween(this, {alpha:1,time:1});
//ボタンカーソルを消す(指カーソルを消す)
buttonMode=false;
break;
}
//3:別の階層に離れた時?
case 3 :{}
//4:カレント(自分の)シーンから離脱した時
case 4 :
{
// ボタンを薄くする
Tweener.addTween(this, { alpha:0.5, time:1});
//ボタンカーソル復活(指カーソルを出す)
buttonMode=true;
break;
}
//?
default : {}
}
}
・
・
・
//ロールオーバーメソッド
override protected function atCastRollOver():void {
//manager.currentで現在のシーンの情報を取得(object型)
//このボタンのシーンIDと一致しない時は、ロールオーバー効果を使用
if (manager.current.sceneId.toString() != sceneId.toString()) {
Tweener.addTween( this, { alpha:1, time:1 } );
}
}
参考:
□ RC8/MEMO :
- http://rc8memo.tumblr.com/
□ RC8/MEMOさんのwonderfl :
- http://wonderfl.net/code/76981e3592f64e3cf9a1c384cad8734759972002
□ BOONDOCK RADIO :
- http://boondockradio.net/blog/?p=431
関連情報
□ APIリファレンス :- http://asdoc.progression.jp/4.0_mxml/jp/progression/events/CastMouseEvent.html#CAST_STATE_CHANGE
- http://asdoc.progression.jp/4.0_mxml/jp/progression/casts/CastButton.html#event:castStateChange
10.01.22.PM04:34
2
新年会おもろかったです〜
progression4かなりよいので是非!
2010.01.26 | post by plamo
http://plamo-tokyo.com/site/mt-tb.cgi/75

先日はお世話になりました!
progressionネタ参考にさせてもらいます~。
ヤッホーイ
2010.01.26 | post by nogud