Можете ли вы перейти с помощью Fade, указав все элементы, без перечисления по отдельности? - PullRequest
0 голосов
/ 28 мая 2011

У меня есть начало эфирного приложения, и я пытаюсь перейти между состояниями, используя Fade (последовательность, которая, теоретически, должна исчезнуть, а затем исчезнуть в следующем состоянии.) Есть ли способнацелиться на него, чтобы затемнить ВСЕ элементы, или мне нужно будет использовать target = "..." и перечислить каждый элемент?

Я пытался вложить все элементы в группу, но это, похоже, не работает.

Сокращенная версия моего текущего кода:

<s:states>
    <s:State name="HomeScreen"/>
    <s:State name="EnemyBuilder"/>
    <s:State name="EncyclopediaBuilder"/>
</s:states>
<fx:Declarations>
    <s:Transition toState="*" fromState="*" >
        <s:Sequence >
            <s:Fade alphaFrom="1" alphaTo="0" duration="250" target="{wrapper}" />
            <s:Fade alphaFrom="0" alphaTo="1" duration="250" target="{wrapper}" />
        </s:Sequence>
    </s:Transition> 
</fx:Declarations>

<s:Group id="wrapper" includeIn="HomeScreen, EnemyBuilder, EncyclopediaBuilder" >

<s:BorderContainer id="encounter" includeIn="HomeScreen" 
                   x="49" y="99" width="200" height="44" 
                   styleName="falseButton"
                   rollOut="alphaOver(event)" rollOver="alphaOver(event)" click="currentState='EncyclopediaBuilder'" >
    <s:Label x="48" y="8" color="#000000" fontFamily="Arial" text="Create a new encounter" />
    <s:Label x="48" y="24" color="#000000" fontStyle="italic" text="Single encounter" />
    <s:Image x="10" y="10" source="assets/001_01.png" />
<s:BorderContainer id="back" includeIn="EncyclopediaBuilder" 
                   right="20" bottom="20" width="200" height="44"
                   styleName="falseButton"
                   rollOut="alphaOver(event)" rollOver="alphaOver(event)"
                   click="currentState='HomeScreen'" >
    <s:Label x="48" y="16" color="#000000" fontFamily="Arial" text="Save and Return"/>
    <s:Image x="10" y="10" source="assets/001_01.png"/>
</s:BorderContainer>        
</s:BorderContainer></s:Group>  

1 Ответ

1 голос
/ 28 мая 2011

Попробуйте использовать что-то вроде следующего:

<s:states>
    <s:State name="HomeScreen"/>
    <s:State name="EnemyBuilder"/>
    <s:State name="EncyclopediaBuilder"/>
</s:states>
<s:transitions>
    <s:Transition toState="*" fromState="*" >
        <s:Sequence target="{wrapper}">
            <s:Fade alphaFrom="1" alphaTo="0" duration="250" />
            <s:Fade alphaFrom="0" alphaTo="1" duration="250" />
        </s:Sequence>
    </s:Transition> 
</s:transitions>

<s:Group id="wrapper">

<s:BorderContainer id="encounter" includeIn="HomeScreen" 
                   x="49" y="99" width="200" height="44" 
                   styleName="falseButton"
                   rollOut="alphaOver(event)" rollOver="alphaOver(event)" click="currentState='EncyclopediaBuilder'" >
    <s:Label x="48" y="8" color="#000000" fontFamily="Arial" text="Create a new encounter" />
    <s:Label x="48" y="24" color="#000000" fontStyle="italic" text="Single encounter" />
    <s:Image x="10" y="10" source="assets/001_01.png" />
<s:BorderContainer id="back" includeIn="EncyclopediaBuilder" 
                   right="20" bottom="20" width="200" height="44"
                   styleName="falseButton"
                   rollOut="alphaOver(event)" rollOver="alphaOver(event)"
                   click="currentState='HomeScreen'" >
    <s:Label x="48" y="16" color="#000000" fontFamily="Arial" text="Save and Return"/>
    <s:Image x="10" y="10" source="assets/001_01.png"/>
</s:BorderContainer>        
</s:BorderContainer></s:Group>  
...