Android代码资源的国际化 分类: Android 2015-07-29 23:28 124人阅读 评论(0) 收藏
internationalization (国际化)简称 i18n,因为在i和n之间还有18个字符,localization(本地化 ),简称L10n。
一般用语言_地区的形式表示一种语言,如 zh_CN, zh_TW.
各国语言缩写 http://www.loc.gov/standards/iso639-2/php/code_list.php
国家和地区简写 http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html
国家_地区语言速查表:http://www.cnblogs.com/Mien/archive/2008/08/22/1273950.html
常见的有:
zh_cn: 简体中文
zh_hk: 繁体中文(中国香港)
zh_tw: 繁体中文(中国台湾地区)
en-hk: 英语(香港)
en_us: 英语(美国)
en_gb: 英语(英国)
en_ww: 英语(全球)
ja_jp: 日语(日本)
ko_kr: 韩文(韩国)
在Android工程的res目录下,通过定义特殊的文件夹名称就可以实现多语言支持。比如我们的程序兼容简体中文、英文,在values文件夹中建立默认strings.xml,再建立values-zh-rCN文件夹。
在每个文件夹里放置一个strings.xml,strings.xml里是各种语言字符串。如果涉及到参数配置类xml文件夹名称也要改成xml-zh、xml。这样在android的系统中进行语言切换,所开发的程序也会跟着切换语言。
- Resources resources = getResources();//获得res资源对象
- Configuration config = resources.getConfiguration();//获得设置对象
- DisplayMetrics dm = resources .getDisplayMetrics();//获得屏幕参数:主要是分辨率,像素等。
- config.locale = Locale.SIMPLIFIED_CHINESE; //简体中文
- resources.updateConfiguration(config, dm);
-------------------
ABOUT:
通常国际化我们只要在res/目录下在重新定义values-国家编号,如values-zh-rCN简体汉语,values-zh-rTW繁体,values-jp日语等。
命名规范:“文件名-语言-地区”。
(配置选项包括语言代号和地区代号。 表示中文和中国的配置选项是 zh-rCN; 表示英文和美国的配置选项是en-rUS. 表示zh 和 en 表示中文和英文;CN 和 US 表示中国和美国; 前面的r 是必须的)
版权声明:本文为博主原创文章,未经博主允许不得转载。