我是flex和actionscript的新生。我想知道一個移動應用程序何時啓動,調用這些方法的順序是什麼以及它們實際上是在分別做什麼。我對這些功能感到困惑:creationComplete,activate,viewActivate和addedToStage用於開始應用程序,並停用ViewDeactivate以關閉應用程序。creationComplete,activate,viewActivate和addedToStage的順序是什麼?他們在做什麼?
這是我寫的測試代碼。
<?xml version="1.0" encoding="utf-8"?>
<s:View viewDeactivate="viewDeactivate()"
deactivate="deactivate()"
addedToStage="addedToStage()"
viewActivate="viewActivate()"
activate="activate()"
creationComplete="init()"
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark" title="HomeView" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:flextras="http://www.flextras.com/mxml">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
private function viewDeactivate():void{
trace("viewDeactivate");
}
private function deactivate():void{
trace("deactivate");
}
private function addedToStage():void{
trace("addedToStage");
}
private function viewActivate():void{
trace("viewActivate");
}
private function init():void{
trace("creationComplete");
}
private function activate():void{
trace("activate");
}
]]>
</fx:Script>
我只是在Android手機和我第一次運行它,關閉它運行它,它會顯示:
creationComplete
viewActivate
addedToStage
viewDeactivate
deactivate
而且當時我打開並再次關閉它,它總是顯示:
viewActivate
activate
viewDeactivate
deactivate
viewActivate
activate
viewDeactivate
deactivate
只有當我使用Android系統設置「強制關閉」應用程序時,t母雞我運行它,它再次顯示:
creationComplete
viewActivate
addedToStage
viewDeactivate
deactivate
所以沒有任何人知道爲什麼我第一次運行它,它只是顯示「viewActivate」,但沒有「激活」,併爲未來當我運行它,它都顯示但錯過「addedToStage」和「creationComplete」?任何人都可以告訴我這些功能用於什麼?他們實際上做了什麼?爲什麼序列顯示那樣?也沒有任何人知道什麼是「激活」和「viewActivate」,也有「取消」和「viewDeactivate「之間的區別?
謝謝!
感謝您的回覆。但我有點困惑添加到顯示列表(addedToStage)的階段和顯示它或使其可見(viewActivate)有什麼區別?爲什麼我第一次運行我的應用程序,它沒有調用激活功能? – LuciferTian2010