Flex 导航容器的延迟执行个体

      

      汗死,

这几天做了个游戏休闲区页面,其实也没什么,。

我用了viewStack 来做导航切换。,刚开始让 休闲游戏 组件 viewStack.selectedIndex=0; 加事件。都可以了,

偏偏老大要我把另一个组件 超市漫游 组件 viewStack.selectedIndex=0; 这下可好,就出错,老弹出 空对象,也没有改哪里啊,不就改了顺序吗?

 搞了一天,还是没有找到错误再哪。问群里人吧,又不知道怎么问,总以为是我的事件写错了,只要我第一次点击上面的导航按钮就弹错,点第二次就没事了,。。最后还是问群,,,还好有人知道,是什么 延迟执行 ,。我马上找google了。,,看了,改一个属性creationPolicy="all"点击导航按钮就没错了。,可以松一口气。,不然郁闷死了。

 

 下面是我找的资料(有兴趣的朋友可以看一下):

 

使用延迟执行个体化来改善效能


如果說,效能問題的頭號原因是多餘的容器巢狀產生的不必要測量和版面配置,那麼
第二個原因就是在尚未需要之前,就先建立物件。為避免這個問題,您可以使用延遲
執行個體化。Flex 使用延遲執行個體化來判斷在應用程式啟動時,要建立哪些元件。
在使用延遲執行個體化時,您可決定使用者在哪個階段進行元件建立。容器中包含一
個 creationPolicy 屬性,您可設定它來指定 Flex 何時建立容器(在啟動時、當使
用者導覽至該容器,或根據使用者的動作)。

导航容器有内建的延迟执行个体化
Flex 導覽容器(ViewStack、Accordin、TabNavigator)有內建的延遲執行個體
化。預設的延遲執行個體化操作是指 Flex 未在啟動時建立所有子系檢視,只有當使
用者導覽至該容器時才會觸發它。下列程式碼顯示兩個使用中的導覽容器
TabNavigator 和 ViewStack:
<mx:TabNavigator>
<mx:VBox id="tabNavView1">
<mx:LinkBar dataProvider="myViewStack" />
<mx:ViewStack id="myViewStack">
<mx:VBox id="view1" >
.
.
</mx:VBox>
<mx:VBox id="view2" >
.
.
</mx:VBox>
<mx:VBox id="view3" >
.
.
</mx:VBox>
</mx:ViewStack>
</mx:VBox>
<mx:VBox id="tabNavView2">
.
.
</mx:VBox>
</mx:TabNavigator>

 

TabNavigator 容器會建立 tabNavView1,因為它是當 Flex 執行個體化
TabNavigator 容器時,顯示的第一個檢視。執行個體化 tabNavView1 時,會對
LinkBar 和 ViewStack 的第一個檢視 (view1) 執行個體化。當使用者在 ViewStack
中與 LinkBar 互動,以選擇另一個檢視時,Flex 就會建立此檢視。Flex 會繼續以這
種方式,在呼叫導覽子代時才建立它們。
容器標籤上的 creationPolicy 屬性控制子系檢視的建立。下列清單說明在 Flex 導
覽容器中設定 creationPolicy 屬性時,其每個屬性的功能:

你可能感兴趣的:(游戏,Google,Flex,休闲游戏)