0

Flex アプリで FlashBuilder 4.6 を使用しています。コンポーネント (私の場合は、タブ付きダイアログ mx:TabNavigator のタブ) がユーザーに表示されるときに呼び出される関数があるかどうかを知りたいですか? creationComplete を試してみましたが、ユーザーがダイアログをクリックすると、ダイアログの 2 番目と 3 番目のタブに対して呼び出されますが、アプリケーション全体が開いたとき、つまり最初のタブが表示される前に最初のタブに対して呼び出されます。

ありがとう、フレッド

4

4 に答える 4

2

InitializationComplete() は、タブ (コンテナー) の子が完全に初期化されたときに呼び出される関数です。私は通常、最初のショーでセットアップを行うために、ViewStack クラス/サブクラスの子であるコンテナでこの関数をオーバーライドします。show イベントをリッスンして、後続のショーでコードを実行することもできます。何らかの理由で、Flex チームは、コンポーネントが初めて表示されるときは表示ではないと判断しました。

ただし、問題はコンポーネントのライフサイクルを十分に活用していないことに関連している可能性があります。完全なコンテキストは何ですか?

于 2012-04-23T00:05:23.443 に答える
1

使用している特定のコンテナーはわかりませんが、すべてのコンテナーには、イベントの種類のいくつかのバリアントがあります: IndexChangedEvent.CHILD_INDEX_CHANGE

これは、TabNav、ViewStack などのベースである halo:Container でトリガーされます。spark / air の同等物には、似たようなものがあるはずです。

于 2012-04-22T17:13:21.900 に答える
0

その作成完了またはクリック イベントの eventListener をそのインデックスとともに追加し、それに特定のアクションを書き込むことができます。コードはリクエストに応じて提供できます。

于 2012-11-15T05:13:46.887 に答える
0

すべての UIComponent には Show Event があるため、ViewStack 内の特定のコンテンツがいつ表示されるかを知るためにそれをリッスンできます。

于 2012-04-23T13:54:53.377 に答える