有Flex 4中的任何事件,我可以用它来检测状态变化?的Flex 4:状态改变事件
8
A
回答
9
如果你在说视图状态的答案是肯定的,你可以像这样监听enterState事件(对于简单的例子来说很抱歉,它是我正在工作的一个项目的一部分,我删除了任何相关的部分的代码):
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
minWidth="800" minHeight="600"
currentState="loading">
<fx:Script>
<![CDATA[
import mx.controls.Alert;
private function onEnterLoadingState():void{
Alert.show("Enter the loading state.", "Application");
}
private function onEnterLoginState():void{
Alert.show("Enter the login state.", "Application");
}
private function onEnterAddState():void{
Alert.show("Enter the addUser state.", "Application");
}
private function changeState(state:String):void{
currentState = state;
}
]]>
</fx:Script>
<s:states>
<s:State name="loading" enterState="onEnterLoadingState()"/>
<s:State name="login" enterState="onEnterLoginState()"/>
<s:State name="addUser" enterState="onEnterAddState()"/>
</s:states>
<s:Panel id="loadView" includeIn="loading" title="Loading">
<s:Button label="Go to login" click="changeState('login')"/>
</s:Panel>
<s:Panel id="loginView" includeIn="login" title="Login">
<s:Button label="Go to addUser" click="changeState('addUser')"/>
</s:Panel>
<s:Panel id="addView" includeIn="addUser" title="AddUser">
<s:Button label="Return to loading" click="changeState('loading')"/>
</s:Panel>
</s:Application>
而且有一个exitState事件,以防您需要它。我希望这可以帮助你。
15
我知道这个问题是旧的,但通过google搜索状态更改事件我还是到这里所以人们想知道:
有是由组件派出StateChangeEvent.CURRENT_STATE_CHANGE
活动,让您的应用程序还可以听听那个。
在监听功能,您可以再存取权限的StateChangeEvent.oldState
和StateChangeEvent.newState
性能。
0
有多种状态的事件,你可以监听任何UIComponent类:
- FlexEvent.STATE_CHANGE_COMPLETE
- FlexEvent.STATE_CHANGE_INTERRUPTED
- StateChangeEvent.CURRENT_STATE_CHANGING
- StateChangeEvent.CURRENT_STATE_CHANGE
- FlexEvent。 ENTER_STATE
- FlexEvent.EXIT_STATE
MXML:
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
enterState="windowedapplication1_enterStateHandler(event)"
exitState="windowedapplication1_exitStateHandler(event)"
currentStateChange="windowedapplication1_currentStateChangeHandler(event)"
currentStateChanging="windowedapplication1_currentStateChangingHandler(event)"
stateChangeInterrupted="windowedapplication1_stateChangeInterruptedHandler(event)"
stateChangeComplete="windowedapplication1_stateChangeCompleteHandler(event)">
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
protected function windowedapplication1_stateChangeCompleteHandler(event:FlexEvent):void
{
}
protected function windowedapplication1_stateChangeInterruptedHandler(event:FlexEvent):void
{
}
protected function windowedapplication1_currentStateChangeHandler(event:StateChangeEvent):void
{
var oldState:String = event.oldState;
var newState:String = event.newState;
}
protected function windowedapplication1_currentStateChangingHandler(event:StateChangeEvent):void
{
var oldState:String = event.oldState;
var newState:String = event.newState;
}
protected function windowedapplication1_enterStateHandler(event:FlexEvent):void
{
}
protected function windowedapplication1_exitStateHandler(event:FlexEvent):void
{
}
]]>
</fx:Script>
</s:WindowedApplication>
相关问题
- 1. 可能改变状态改变的组件 - Flex
- 2. 的Android:按钮状态改变事件
- 3. flex 4 button down状态
- 4. flex 4状态(用作beta?)
- 5. 用函数改变状态 - Flex
- 6. Flex 4/Flash 4加入当前状态
- 7. HGroup中的Flex 4按钮状态
- 8. Reactjs - 在子组件更新状态时,父componend状态改变
- 9. 改变状态
- 10. 在flex中切换状态4
- 11. Flex 4 Itemrenderer更新事件?
- 12. Flex 4皮肤:根据父容器状态更改皮肤
- 13. 按钮状态更改标签颜色(FLex 4)
- 14. Flex 4更改风格选项与状态
- 15. 设置不同状态的控件的属性? - Flex的4
- 16. Flex - 改变和focusOut在一个事件?
- 17. 如何收听软键盘的状态改变事件?
- 18. 呼应的mootools的事件“然后”变量的状态变种已经改变
- 19. Flex 3:如何使用变量更改代码中的状态
- 20. Magento订单状态更改事件
- 21. 捕获网络状态更改事件
- 22. 对象改变状态时触发Ajax事件
- 23. Java:透明地处理状态改变事件
- 24. 当呼叫状态改变时,Skype API不触发事件
- 25. Flex 4:组件移动事件
- 26. 根据Flex 4中的全局状态设置按钮的状态
- 27. 当视图状态改变时运行一个函数Flex
- 28. 什么是Flex改变另一个组件状态的好习惯?
- 29. 如何更改flex 4 spark数据组的一个成员的itemRenderer状态?
- 30. 反应。组件未在状态改变