Adobe Flex 3 ヘルプ

Repeater コンポーネントの使用に関する注意事項

Repeater コンポーネントを使用する場合は、次の点に注意してください。

  • Repeater コンポーネントを使用して、プログラムによって生成された 2 次元 Array オブジェクトを繰り返すことはできません。これは、Array オブジェクトのエレメントは changeEvent イベントをトリガしないので、実行時にバインディング元として機能しないからです。バインディングにより、インスタンス化の実行中に初期値がコピーされます。これは、<mx:Script> タグで変数が宣言された後、initialize ハンドラが実行される前に行われます。
  • データプロバイダとして使用された配列への実行時の変更は、Repeater コンポーネントに反映されません。実行時の変更が必要な場合は、コレクションを使用します。
  • よくある間違いとして、Repeater コンポーネントを使用する際に、dataProvider プロパティに中括弧({ })の記述を忘れてしまうことが挙げられます。Repeater コンポーネントが実行されない場合は、バインディングに誤りがないことを確認してください。
  • 繰り返されるオブジェクトが正しい順序で表示されず、Repeater コンポーネントを連続でまたはネストして使用している場合は、オブジェクトが正しく表示されない Repeater の直後にダミーの UIComponent を配置する必要があります。

    次に示すコードには連続する <mx:Repeater> タグが含まれているので、<mx:Spacer> タグを使用してダミーの UIComponent を作成します。

    <mx:VBox>
        <mx:Repeater id="r1">
            ...
        </mx:Repeater>
        <mx:Repeater id="r2">
            ...
        </mx:Repeater>
        <mx:Spacer height="0" id="dummy"/>
    </mx:VBox>
    
    

    次に示すコードにはネストした <mx:Repeater> タグが含まれているので、<mx:Spacer> タグを使用してダミーの UIComponent を作成します。

    <mx:VBox>
        <mx:Repeater id="outer">
            <mx:Repeater id="inner">
                ...
            </mx:Repeater>
            <mx:Spacer id="dummy" height="0">
        </mx:Repeater>
    </mx:VBox>
    
    

 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート