Apache flex 如何创建包含其他状态的状态
我有一个移动应用程序,其中我有3个州。这里有默认的纵向和横向,我想添加第三种状态,包括其他两种Apache flex 如何创建包含其他状态的状态,apache-flex,flex4,Apache Flex,Flex4,我有一个移动应用程序,其中我有3个州。这里有默认的纵向和横向,我想添加第三种状态,包括其他两种 <s:states> <s:State name="portrait"/> <s:State name="landscape"/> <s:State name="panel" stateGroups="portrait, landscape"/> </s:states> 顺便说一句,我一直在试图理解国家集团,但我认为
<s:states>
<s:State name="portrait"/>
<s:State name="landscape"/>
<s:State name="panel" stateGroups="portrait, landscape"/>
</s:states>
顺便说一句,我一直在试图理解国家集团,但我认为我没有理解它
更新这里有更多的上下文。我有一个名为“appMenu”的容器,我想在用户按下菜单键时使其可见。所以我想为它创建一个状态。现在只有一个值会改变,那就是“y”属性。由于这是一个移动应用程序,设备将处于纵向或横向模式(状态)。我不想让用户脱离这些状态,只将这个新属性应用于他们所处的任何状态
<s:BorderContainer id="appMenu"
borderVisible="false"
width="100%"
height="120"
y="-120"
y.panelVisible="0"
backgroundColor="0"
>
<s:HGroup right="10" verticalCenter="0">
<s:Label text="Feedback"
color="#ffffff"
fontSize="18"
fontWeight="bold"/>
</s:HGroup>
</s:BorderContainer>
您的问题有两种可能的答案 如果“面板”状态只包含其他两个状态中的内容,那么您只需要以下内容:
<s:states>
<s:State name="portrait" stateGroups="panel" />
<s:State name="landscape" stateGroups="panel" />
<s:State name="someOtherState" />
</s:states>
另一方面,如果“panel”状态中还包含其他内容,那么它可能看起来更像这样:
<s:states>
<s:State name="portrait" stateGroups="panel" />
<s:State name="landscape" stateGroups="panel" />
<s:State name="justThePanel" stateGroups="panel" />
<s:State name="someOtherState" />
</s:states>
如果你现在有
<s:Group id="a" includeIn="portrait" />
<s:Group id="b" includeIn="landscape" />
<s:Group id="c" includeIn="someOtherState" />
<s:Group id="d" includeIn="panel" />
<s:Group id="e" />
然后
- 始终显示e
- a仅在“纵向”状态下显示
- b仅在“横向”状态下显示
- c仅在“someOtherState”状态下显示
- d以“纵向”、“横向”和“仅面板”状态显示(因为这三种状态都是“面板”状态组的成员)
<s:Group id="a" includeIn="portrait" />
<s:Group id="b" includeIn="landscape" />
<s:Group id="c" includeIn="someOtherState" />
<s:Group id="d" includeIn="panel" />
<s:Group id="e" />