2011-10-21 9 views
0

私はFlexアプリケーションをローカライズしようとしています。ロケールの仕様とMXMLタグ内のすべてのものをセットアップできました。たとえば、次のようになります。FLEX - ActionScriptで条件付きロケール文字列を設定する

if(loggin){ 
    loginBtn.label = "Logout"; 
}else{ 
    loginBtn.label = "Login"; 
} 

ActionScriptを使用して2つの文字列を他のロケールに変更するにはどうすればよいですか?

ありがとうございました!

答えて

1

ResourceManager

if(loggin){ 
    loginBtn.label = resourceManager.getString(MyResourceBundles.LABELS,'login') 
}else{ 
    loginBtn.label = resourceManager.getString(MyResourceBundles.LABELS,'logout') 
} 

を使用して、このアプローチの欠点は、ユーザが言語を途中で変更した場合、バインディングは発生しませんということです。

したがって、この特定の例のために、私はreccommendたい状態:

<s:Button id="loginBtn" 
    label.loggedIn="{resourceManager.getString(MyResourceBundles.LABELS,'login')}" 
    label.loggedOut="{resourceManager.getString(MyResourceBundles.LABELS,'logout')}" />