カテゴリー
未分類

ストリングからクラスのインスタンスを作る

以前にBeInteractive!さんが書いていたAS2のストリングからクラスのインスタンスを作るではどーなったのか?
ということで、書いておく。
これは前のエントリー。loadBitmapの延長線上にあります。
つまりライブラリにあるに割り当て、BitmapDataとして取得する際に、画像のクラス名を変数として処理しないと正直使えないぜ!ということです。
わかりやすく言うと、ライブラリの中に”photo1″,”photo2″,”photo3″…と画像が存在して、それぞれにクラスが割り当てられていたとして、インスタンスの際にすべてクラス名を定数で書いていたらif分の嵐。10個ぐらいなら耐えれるけど、100個とかあったり、可変したりしたらどーすんだ?と・・。
(まぁでも総数はどっちにしてもに記述する必要はあるのだけど)
ということで調べてみました。
AS2のときはものすごい技が必要でしたが、AS3はその辺ツールが用意されていました。
getDefinitionByName ()
使い方は簡単。

こんな感じ。
一応”getDefinitionByName”で戻ってくるのは”パラメータで定したクラスのクラスへの参照”なので、”as Class”でクラスに定義してあげます。(多分これをやらないと、型指定無しで使えないと思う)
最初

とかやったんだけど、しい勢いで怒られた。
asはそんなに万能ではないようです・・・。
うっとおしい。
PS
あ、コードはimport全部してないからbitmapとかは自分でimportしてください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です