您的位置:首页 > 其它

Change Locale at the runtime

2008-11-04 09:49 148 查看
Use ResourceBundle class and resourceManager method to change text and images at the runtime

<?xml version="1.0" encoding="utf-8"?>
<mx:Application
creationComplete="{init()}"
xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"
viewSourceURL="srcview/index.html">
<mx:Script>
<![CDATA[
import it.creativesource.ResourceLanguage;
private function init():void{

ResourceLanguage.setResources(resourceManager);
}
private function changeLocale(locale:String):void{

resourceManager.localeChain=[locale];
}
]]>
</mx:Script>
<mx:ApplicationControlBar width="400">
<mx:Image source="{resourceManager.getString('myResources','ICON')}" width="16" height="11"/>
<mx:Label text="{resourceManager.getString('myResources','TITLE')}" width="100%"/>
<mx:Button icon="@Embed('assets/us.png')" label="eng" click="changeLocale('en_US')" />
<mx:Button icon="@Embed('assets/it.png')" label="ita" click="changeLocale('it_IT')" />
</mx:ApplicationControlBar>

<mx:Text text="{resourceManager.getString('myResources','CONTENT')}" width="400" height="240"/>
</mx:Application>

The ResourceLanguage class:

package it.creativesource
{
import mx.resources.IResourceManager;
import mx.resources.ResourceBundle;

public class ResourceLanguage
{
public function ResourceLanguage()
{
}

public static function setResources(resourceManager:IResourceManager):void{

var myResources:ResourceBundle=new ResourceBundle("en_US","myResources");
myResources.content['TITLE']="Adobe Flex - English Version";
myResources.content['CONTENT']="Adobe Flex is a collection of technologies released by Adobe Systems for the development and deployment of cross platform rich Internet applications based on the proprietary Adobe Flash platform. The initial release in March 2004 by Macromedia included a software development kit, an IDE, and a J2EE integration application known as Flex Data Services. Since Adobe acquired Macromedia in 2005, subsequent releases of Flex no longer require a license for Flex Data Services, which has become a separate product rebranded as LiveCycle Data Services.";
myResources.content['ICON']="assets/us.png";
resourceManager.addResourceBundle(myResources);

myResources=new ResourceBundle("it_IT","myResources");
myResources.content['TITLE']="Adobe Flex - Versione Italiana";
myResources.content['CONTENT']="Adobe Flex è un insieme di tecnologie rilasciato da Adobe Systems per lo sviluppo e la diffusione del multi-piattaforma Rich Internet Applications basata sulla proprietà di Adobe Flash piattaforma. The initial release in March 2004 by Macromedia included a software development kit , an IDE , and a J2EE integration application known as Flex Data Services . La release iniziale nel marzo 2004 da Macromedia incluso un kit di sviluppo software, un IDE, e un J2EE integrazione domanda noto come Flex Data Services. Since Adobe acquired Macromedia in 2005, subsequent releases of Flex no longer require a license for Flex Data Services, which has become a separate product rebranded as LiveCycle Data Services. Dato che Adobe ha acquisito Macromedia nel 2005, le successive versioni di Flex non necessitano più di una licenza per Flex Data Services, che è diventato un prodotto separato come rebranded LiveCycle Data Services.";
myResources.content['ICON']="assets/it.png";
resourceManager.addResourceBundle(myResources);

resourceManager.update();

}
}
}
引用:http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&postId=11143&productId=2&loc=en_US
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐