Flex打包swc的国际化应用

网上看了下,很少有很方便的swc国际化支持,因此实现了下,代码如下:

文件目录
-locale
  -zh_CN
    -locale.properties
  -en_US
    -locale.properties
在locale里面有个text_title的key

为了方便调用,先封装一个调用国际化支持的类
package pizazz.flex4.resource{
	import mx.resources.IResourceManager;
	import mx.resources.ResourceManager;

	[ResourceBundle("locale")]
	public class LocaleResource{
		private static var _resource:IResourceManager;

		public function LocaleResource(){}

		public static function getInstance():IResourceManager{
			if(_resource == null){
				_resource = ResourceManager.getInstance();
			}
			return _resource;
		}

		public static function strs(key:String):String{
			return LocaleResource.getInstance().getString("locale", key);
		}
	}
}

当然,调用的时候用LocaleResource.strs("text_title");
在库项目中附加编译参数
-source-path=locale/{locale} -locale zh_CN -locale en_US
这样之后就可以支持中文和英文了

只需在引用swc的项目中附加编译参数即可,默认是en_US的,-locale zh_CN就变成中文的了
视图:

Flex打包swc的国际化应用

Flex打包swc的国际化应用

你可能感兴趣的:(Flex)