1

[これにより、私のプロジェクトの画像が表示され、投稿できるほど長い間メンバーになっていないため、コードが表示されます。:] 1

これは、Flex での簡単なデモ チュートリアル アプリケーションのために取り組んでいるプロジェクトです。mxml ページを使用しています。左側には、メイン アプリケーションと、メイン アプリケーション mxml に読み込まれるサンプルとしての他の mxml ファイル (サンプル パッケージ内) があることがわかります。リスト内のオブジェクトから値を動的に取得して、子 mxml ファイルをアプリケーションのさらに下にあるコンテナにロードするにはどうすればよいですか?

4

1 に答える 1

2

あなたが何をしようとしているのか正確にはわかりません。しかし、コード スニペットに基づいて、2 つの可能性が見えます。

まず、個別のサンプルがすべて個別の SWF にコンパイルされている場合。その後、 SWFLoaderを使用してそれらをロードできます。コード スニペットの XML に基づいて、個別の SWF を参照しているようです。

コード サンプルをメイン アプリケーションにコンパイルしただけの場合は、ViewStack を使用して、表示するサンプルに応じてViewStackのインデックスを切り替えることができます。概念的には次のようなものです。

<mx:ViewStack id="sampleViewStack">
  <myComps:Sample1 />
  <myComps:Sample2 />
  <myComps:Sample3 />
</mx:ViewStack>

サンプル 1 を表示するには、ActionScript で次のようにします。

sampleViewStack.selectedIndex = 0;

サンプル 2 を表示するには、次の操作を行います。

sampleViewStack.selectedIndex = 2;

等々...

ただし、各サンプルをオンザフライでコンパイルしてメイン アプリケーションに表示する場合は、はるかに困難な作業になります。


私の理解が正しければ、リスト dataProvider にあるオブジェクトのプロパティにアクセスするのに苦労しているとおっしゃいました。コードのスクリーンショットに基づくと、 dataProvider は汎用オブジェクトで構成されているようです。これらのオブジェクトのラベルまたは値のプロパティにアクセスするには; あなたがするでしょう; これを行う必要があります:

list.selectedItem['label']
于 2012-03-09T22:35:37.780 に答える