Android的多语言实现
来源:互联网 发布:c语言多进程编程 编辑:程序博客网 时间:2024/06/05 12:46
以前就知道Android的多语言实现很简单,可以在不同的语言环境下使用不同的资源什么的,但是一直没有实际使用过。 最近公司的项目要用到多语言于,是就研究了一下——果然很简单啊。
要使用多语言,首先肯定要有为不同语言准备的资源。
只需要按照Android提供的规范,对不同语言下的资源文件夹进行对应的命名即可。
比如我们知道/valus是Android的默认简单资源(字符串、数值、颜色等)的文件夹,那么对不同语言下提供的values文件夹命名方式就形如:
/values-zh
/values-zh-rCN
/values-zh-rTW
- 其中values保持不变;
- 后缀的zh表示语言;
- 后缀的rCN、rTW其中‘r’是一个标记,表示后面跟着的CN、TW是国家或地区标志。
所以以上三个资源文件夹表示所对应的语言环境分别为:
中文
中文-中国 (即中文简体)
中文-台湾 (即中文繁体)
默认情况下,Android会根据系统的语言地区设置,自动选择对应的资源。
会首先尝试语言地区全匹配,如果没有权匹配的资源包,则会尝试匹配语言,最后则会取默认的。
比如如果Android系统的语言地区是中文简体,则首先会尝试从/values-zh-rCN中获取资源,如果没有此文件夹或者文件夹中没有响应的资源,则会尝试/values-zh,都获取不到的情况下即从/values中获取。
(/values是必须存在的,否则不能通过编译)
当然,也可以在代码中手动进行控制,指定所选择的语言:
Configuration config = getResources().getConfiguration();//获取系统的配置 config.locale = Locale.TRADITIONAL_CHINESE;//将语言更改为繁体中文 getResources().updateConfiguration(config, getResources().getDisplayMetrics());//更新配置
这里是一个很简单的DEMO:http://download.csdn.net/detail/barryhappy/7176709,
一个多语言版的Hello world,默认根据系统语言选择,并可以手动切换。
参考:
- 语言缩写
- 国家地区缩写
- Providing Resources | Android Developers
- String Resources | Android Developers
- Localizing with Resources | Android Developers
同步发表在 http://www.barryzhang.com/archives/174
广告一下我的新博客,欢迎访问哈~:BarryZhang.com
2 1
- android 多语言的实现
- android 多语言的实现
- Android的多语言实现
- android 多语言的实现
- Android 多语言的实现
- Android的多语言实现
- Android的多语言实现
- Android中实现多语言的切换
- Android多语言项目的实现
- Android多语言实现
- Android多语言以及APP内切换语言的实现
- android语言国际化的实现
- Android:多语言对应实现
- Android实现多语言,国际化
- Android多语言支持实现
- Android中实现应用程序的多语言版本
- 多语言的实现
- Android 应用语言设置的实现
- Win7、Ubuntu双系统正确卸载Ubuntu系统
- 安装双系统后,开机unknown filesystem
- 5数值调节按钮Spin
- 黑马程序员 java IO SequenceInputStream 和并文件
- 华为章宇:如何学习开源项目及Ceph的浅析
- Android的多语言实现
- 黑马程序员 java IO 分割文件
- 使用Angular.JS和ASP.NET创建单页应用
- 数据结构之链表
- python调用c++代码,.so库的编译
- InitPHP轻量级WEB应用框架,码农试用,推荐
- Win32 服务进程和单实例实现
- 第七周-项目5-复数类模板
- Music!苹果 iBeacon 入驻科切拉音乐艺术节