`

Flex3的国际化支持

    博客分类:
  • Flex
 
阅读更多

Flex的国际化支持

 

Author:lvmy

Email:lvmingyan@antiy.com

 

 

前言:由于Flex3本身不支持中文的国际化,所以我们要自行制作中文的本地支持文件,具体方法如下:

 

 

1、到当前需要国际化的flex项目的SDK目录的bin下执行 copylocale en_US zh_CN
2、在flex项目src同级目录创建目录 ../locale/
3、在locale 下创建中文资源文件夹(../locale/zh_CN) 以及 英文资源文件夹(../locale/en_US)
4、分别在../locale/zh_CN 和 ../locale/en_US 下创建语言包资源文件 locale.properties
5、在当前项目-->右键-->Properties-->Flex Build Path-->Source path-->Add Folder,在弹出的文本框中输入locale\{locale}
6、在当前项目-->右键-->Properties-->Flex Compiler-->在Additional compiler arguments 的最后输入 -locale zh_CN en_US,这里默认语言是中文
 

 

 

到这里为止就已经创建好了前置环节,下面将用一个简单的实例来介绍具体的使用:

 

1、加载语言包资源文件,在Application添加如下代码:

 

 

<!-- locale即为资源文件的名字,不包含后缀 -->
<mx:Metadata>
	[ResourceBundle("locale")]
</mx:Metadata> 
 

2、在Application中创建一个Linkbar,数据源内有两条数据,稍候用来生成两个LinkButton来切换界面的中英文显示。

 

<mx:LinkBar dataProvider="{[{'label' : '中文', 'locale' : 'zh_CN'},{'label' : 'English', 'locale' : 'en_US'}]}" labelField="label"/>

 

3、在Application中创建一个Label,稍候将使用这个label来展示国际化支持

 

 

<mx:Label />
 

4、在刚才创建好的两个资源文件 ../zh_CN/locale.properties 和 ../en_US/locale.properties 中添加内容以提供语言支持

 

 

label_text = 这是一个Label

 

 

label_text = This is a label

 

 

5、使用resourceManager类的getString方法获取当前语言环境的字符串,并赋值给label的text属性:

 

 

<!-- getString方法有两个参数,第一个即资源文件名,第二个即资源包中对应的key -->

<mx:Label fontSize="30" text={resourceManager.getString('locale','label_text')}/>
 

 

6、到这里运行项目label已经可以显示中文的text,现在为前面预留的Linkbar添加itemClick事件并触发语言切换:

 

 

<mx:Script>
	<![CDATA[
		import mx.events.ItemClickEvent;
		private function locale_change(event:ItemClickEvent):void{
			//为了免去判断,在这里使用如下写法
			var temp:LinkBar = event.currentTarget as LinkBar;
			resourceManager.localeChain = [temp.dataProvider[temp.selectedIndex].locale];
		}
	]]>
</mx:Script>
<mx:Label fontSize="30" text="{resourceManager.getString('locale', 'label_text')}"/>
<mx:LinkBar dataProvider="{[{'label' : '中文', 'locale' : 'zh_CN'},{'label' : 'English', 'locale' : 'en_US'}]}" 
	labelField="label" 
	itemClick="locale_change(event)"/>
 

到此就完成了整个国际化的操作

分享到:
评论

相关推荐

    Flex2 发现之旅:构建多语言本地化Flex应用

    使用Flex2的本地化特性我们可以很容易创建多语言本地化的Flex应用,为我们的Flex应用打入国际市场添威助力,不过不像Java的 本地化资源动态获取的方式,目前Flex2的本地化特性只支持静态的本地化资源嵌入,还不支持...

    flex3的cookbook书籍完整版dpf(包含目录)

    使用正则表达式创建国际化邮政编码Validator 15.4节. 如何创建一个Validator去验证通用商品代码(UPC) 15.5节. 如何去验证多个Combo Box及Radio Button组件 15.6节. 如何在一个表单内通过ToolTips来返映一个错误 ...

    JavaScript实现的可视化表单设计器源码.zip

    JavaScript实现的可视化表单设计器源码。实现的可视化表单设计器。基于Vue的可视化表单设计器,让表单开发简单而高效。 特性如下: 可视化配置页面 提供栅格布局,并采用flex实现对齐 ...国际化支持

    vue-form-making:A visual form designergenerator base on Vue.js, make form development simple and efficient.(基于Vue的可视化表单设计器,让表单开发简单而高效。)

    创造形式 | 英语 FormMaking在和基础上开发,配备了最新的前端...国际化支持 第三方插件 浏览器支持 现代浏览器和Internet Explorer 10+。 IE浏览器/边缘 火狐浏览器 Chrome合金 苹果浏览器 IE10,IE11,Edge 最近

    Zoomla!CMS5.5.rar

    简介  逐浪CMS是采用微软最新的dotNET2.0技术平台...逐浪CMS荣膺国际标准组织颁发的ISO9001质量管理体系认证,成为国内首家(唯一)通过此认证的CMS,意味着逐浪软件获得外包与离岸出口的资质,构建更大的发展蓝图。

    vue-form-builder:使用Vue.js和Element UI构建并生成表单源代码的拖放表单构建器平台(基于vue和element-ui实现的表单设计平台,生成Element UI的表单源代码)

    国际化支持 生成元素UI表单源代码(方便开发者拖拽生成表单,复制源码到项目中快速开发) 提供早期数据接口,方便用户需要异步获取数据加载 支持表单验证 快速获取表单数据 支持 如果你发现了新的bug,或者有新的...

    ActionScript开发人员指南中文版

    示例:国际化股票报价应用程序 第章:本地化应用程序 选择区域设置 本地化Flex内容 本地化Flash内容 本地化AIR应用程序 对日期、时间和货币进行本地化 第章:关于HTML环境 HTML环境概述 AIR和WebKit 第章:在AIR中进行...

    Spring攻略(第二版 中文高清版).part2

    11.7 国际化(I18n)信息属性 458 11.7.1 问题 458 11.7.2 解决方案 458 11.7.3 工作原理 458 11.8 改变永久性存储系统 461 11.8.1 问题 461 11.8.2 解决方案 461 11.4.3 工作原理 461 11.9 日志 ...

    Spring攻略(第二版 中文高清版).part1

    11.7 国际化(I18n)信息属性 458 11.7.1 问题 458 11.7.2 解决方案 458 11.7.3 工作原理 458 11.8 改变永久性存储系统 461 11.8.1 问题 461 11.8.2 解决方案 461 11.4.3 工作原理 461 11.9 日志 ...

    yitran电力载波芯片 网络协议

    IT1000 是 Yitran 的 OFDM Flex 方案,是以 G.hnem 标准为基础,设计速度高达 1 Mbps ,并可配置支持 G3 、 PRIME 和 P1901.2 等标准。 命令 与控制系统解决方案 命令与控制系统通讯网络允许从本地和远程对接入...

    yitran Ynet电力载波网络协议源代码

    IT1000 是 Yitran 的 OFDM Flex 方案,是以 G.hnem 标准为基础,设计速度高达 1 Mbps ,并可配置支持 G3 、 PRIME 和 P1901.2 等标准。 命令 与控制系统解决方案 命令与控制系统通讯网络允许从本地和远程对接入...

    WAP 无线应用协议

    2.4.6 国际化 28 2.4.7 安全和接入控制 28 2.5 WTA体系结构概述 28 2.5.1 WTA 框架的组成部分 29 2.5.2 特定的电话交换 30 2.6 术语定义 31 2.7 缩略语 33 2.8 参考标准 34 2.9 参考资料 35 第3章 无线应用环境规范 ...

    asp.net知识库

    关于能自定义格式的、支持多语言的、支持多数据库的代码生成器的想法 发布Oracle存储过程包c#代码生成工具(CodeRobot) New Folder XCodeFactory3.0完全攻略--序 XCodeFactory3.0完全攻略--基本思想 XCodeFactory...

Global site tag (gtag.js) - Google Analytics