Flex 4 / Flash 4添加到当前状态

时间:2010-05-28 15:18:03

标签: flex flash states

我在使用Flex(或Flash)4中的状态时遇到一些困难。让我们说我的应用程序有三种状态;默认(基本)状态,状态1和状态2.

状态1应始终基于基本状态,这很容易实现。但是,我希望状态2基于当前状态(基数或状态1)。我不能为我的生活弄清楚。我尝试将状态1的basedOn属性设置为“this.currentState”,但这只会导致我的浏览器崩溃。

 <s:states>
  <s:State name="default"/>
  <s:State name="state1"/>
  <s:State name="state2" basedOn="{this.currentState}"/>
 </s:states>

 <s:TitleWindow id="configWindow" includeIn="state1" width="250" height="100%" close="configWindow_closeHandler(event)"/>
 <s:Panel id="settings" includeIn="state2" width="200" height="200"/>

1 个答案:

答案 0 :(得分:1)

basedOn不是Bindable属性,这就是代码中值不变的原因。

理论上,它是一个读/写属性,因此您可以在运行时更改它;但您必须手动执行此操作,可能是在ActionScript中。

根据您的代码段;我不明白你为什么要这样做。一旦你将状态改为'state2',你就不会进入一个奇怪的循环吗?