1

フレックス3からフレックス4に移行するフレックス4で新しい状態がどのように機能するかを誰かが説明できますか?状態コードでエラーが発生しました:

<s:states>

        <s:State name="login"/>
        <mx:RemoveChild target="{viewStack}" />
        <mx:RemoveChild target="{header}" />
        <mx:RemoveChild target="{footer}" />
        <mx:SetStyle target="{login}" name="verticalAlign" value="middle" />

        <s:State name="menu"/>
        <mx:RemoveChild target="{login}" />
        <mx:AddChild relativeTo="{null}" >
            <search:Drawer title="{resourceManager.getString('locale','mySearch')}" 
                           dockSide="left" 
                           backgroundAlpha="0.9" 
                           backgroundColor="#ccccff">
                <search:SearchContent />
            </search:Drawer>
        </mx:AddChild>

    </s:states>

「ターゲット」コードが必要な場合は、ここに伝えてください。

4

2 に答える 2

0

表示するコードは少し短すぎて正確なコードを提供できませんが、次のようになります。

<s:states>
    <s:State name="login"/>
    <s:State name="menu"/>
</s:states>

<mx:ViewStack id="viewStack" excludFrom="login" 
              paddingTop="15" width="100%" height="100%"/>

<s:HGroup id="header" excludeFrom="login" width="100%"/>
<s:HGroup id="footer" excludeFrom="login" width="100%" verticalAlign="bottom"/>

<mx:Box id="login" includeIn="login" width="100%" height="100%"
        horizontalAlign="center" verticalAlign="middle"/>

<search:Drawer includeIn="menu" ... />

基本的に、oldタグとタグの代わりにincludeInandexcludeFrom特殊属性を使用します。状態は2つしかないため、まったく同じ効果があることに注意してください。 現在の状態に応じてプロパティを設定する可能性もあります。例:RemoveChildAddChildincludeIn="menu"excludeFrom="login"

<v:MyComp left.login="0" left.menu="25"/>
于 2013-01-08T12:47:16.247 に答える
0

ビューステートタグには、次のようなステートのみを含める必要があります。

    <s:states> 
        <s:State name="State1"/> 
        <s:State name="State2"/> 
        <s:State name="State3"/> 
    </s:states> 

次に、ドット(。)演算子を使用して、コンポーネントの状態固有のプロパティ値を定義します。

propertyName.stateName

例えば:

<s:Button label="Play" label.State2="Stop" label.State3="Paused"/>

Flex4.6のAdobeヘルプページで状態の詳細を読むことができます。ビュー状態の作成と適用

于 2013-01-08T12:48:33.223 に答える