Home > ActionScript3.0 | Progression > getSceneBySceneIdでも同じことが…

getSceneBySceneIdでも同じことが…

昨日のエントリで、ProgressionではgetSceneByIdを使うと異なるシーン間で値の受け渡しが出来ると書きましたが、getSceneBySceneIdクラスを使っても同じことが出来ます。

getSceneByIdはユニークな一意のID名を付けて、それにアクセスするという手法を取りましたが、getSceneBySceneIdはシーンについているsceneId名を使ってアクセスします。

前回と同じくIndexSceneとAboutSceneを使ってみたいと思います。

変数がpublicな場合

★IndexScene

public var _str:String = "ほげほげ";
//コンストラクタ
public function IndexScene() {
}

★AboutScene

var a:IndexScene = IndexScene(getSceneBySceneId(new SceneId( "/index" )));
trace(a._str);

これを実行すると、

ほげほげ

と出力パネルに表示されます。

getSceneBySceneIdの引数には、sceneId名を渡してあげる必要があります。

変数がprivateな場合

前回と一緒で、getter、setterを使ってあげます。

★IndexScene

private var _str:String = "ほげほげ";
//コンストラクタ
public function IndexScene() {
}

//getterを定義
public function get str():String{
     return _str;
};

//setterを定義
public function set str(value:String):void{
    _str = value;
}

★AboutScene

var a:IndexScene = IndexScene(getSceneBySceneId(new SceneId( "/index" )));
trace(a.str);
a.str = "ユニークな一意の名前";
trace(a.str);

これを実行すると、

ほげほげ
ユニークな一意の名前

このように表示されます。

ユニークなID名をつけるのが面倒な場合は、getSceneBySceneIdを使ってアクセスしてあげればOK。

これまた便利ですね。

Comments:0

Comment Form
Remember personal info

Trackbacks:1

Trackback URL for this entry
http://flabaka.com/blog/wp-trackback.php?p=577
Listed below are links to weblogs that reference
getSceneBySceneIdでも同じことが… from flabaka
pingback from kanariia.com blog - [progression勉強]実制作でつまづいたとこをQ&A形式でまとめてみた 09-04-28 (火) 15:26

[...] 私は名前つけるのめんどくさかったのでgetSceneBySceneId使いました! http://flabaka.com/blog/?p=577 [...]

Home > ActionScript3.0 | Progression > getSceneBySceneIdでも同じことが…

Search
Feeds
Meta

Return to page top