0

Flex Mobile 4.6内で、<s:View>コンポーネント内からメインアプリケーションにアクセスする方法はありますか?私のプログラムが次のようになっているとしましょう。

主な用途:

<s:TabbedViewNavigatorApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
                  xmlns:s="library://ns.adobe.com/flex/spark"
                  creationComplete="databaseConnection(event)">

  <s:ViewNavigator id="tasks" width="100%" height="100%"
                       label="Tasks" firstView="views.TasksView"
                       title="Tasks" icon="@Embed('assets/icons/tasks.png')">
  </s:ViewNavigator>
</s:TabbedViewNavigatorApplication>

view.TasksView:

<s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
        xmlns:s="library://ns.adobe.com/flex/spark">

  <s:List left="0" right="0" top="0" bottom="0"
     dataProvider="{taskData}" itemRenderer="renderers.TaskListRenderer"/>
</s:View>

メインアプリケーション内に、内でアクセスしたい変数があるとしましょうview.TasksView。どうやってやるの?

お時間をいただきありがとうございます。

4

2 に答える 2

1

FlexGlobalstopLevelApplication

あなたの場合:

var app : TabbedViewNavigatorApplication = FlexGlobals.topLevelApplication as TabbedViewNavigatorApplication

もちろん、トップレベルのアプリケーションにアクセスすることは、カプセル化の大きな中断であり、通常はお勧めしません。

于 2012-05-18T21:31:49.723 に答える
0

「parentApplication」プロパティを使用することをお勧めします。たとえば、他のビューからビュー "vsetting" のタブ ボタンを無効にする場合:

parentApplication.vsetting.enabled = false;
于 2014-12-21T10:42:38.677 に答える