フレックスでボタンのアイコンを設定したい。
デフォルトの構文は次のとおりです。
myButton.setStyle("icon", iconClass);
iconClass は通常、埋め込みオブジェクトです。
しかし、私がやりたいのは、標準のスプライトまたはムービークリップ(実行時に見つけたもの) をアイコンとして使用することです。
これは可能ですか?誰かがこれをしましたか?
ありがとう!
フレックスでボタンのアイコンを設定したい。
デフォルトの構文は次のとおりです。
myButton.setStyle("icon", iconClass);
iconClass は通常、埋め込みオブジェクトです。
しかし、私がやりたいのは、標準のスプライトまたはムービークリップ(実行時に見つけたもの) をアイコンとして使用することです。
これは可能ですか?誰かがこれをしましたか?
ありがとう!
これは実際には、スタイリングに関するFlexのフレームワークの致命的な欠陥です。Flexがアイコンのスタイル値を取得すると、そのアイコンはタイプClassであり、インスタンス化されたオブジェクトはタイプDisplayObject(または派生)であると見なされます。mx:Imageスタイルの値が型であるかどうかをテストするためのコード(クラスはソースプロパティに対して行うような)への些細な変更でDisplayObjectあり、そうである場合は、現在実行している構築ステップをスキップします。
Flexフレームワークのソースを変更したくない場合は、Benのソリューションが最適です。個人的には、特定のコンポーネントにモンキーパッチを適用して、一部のコンポーネントDisplayObjectsの代わりにインスタンス化を受け入れるようにします。Classes.一部のコンポーネントは、他のコンポーネントよりもパッチを適用するのが面倒です。
可能な解決策を見つけました。http://blog.benstucki.net/?p=42この前にあげて報告します。