Android之路 – 3步完成多语言支持

Google不愧是跨国企业,连开发出的系统都能轻松支持多语言支持。

以英文和简体中文两种语言为例,3步完成:

1. 新建项目后,默认res\values下会有strings.xml文件,我们添加一些资源字符串

ContractedBlock.gif ExpandedBlockStart.gif res\values\strings.xml
 
   
<? xml version="1.0" encoding="utf-8" ?>
< resources >
< string name ="app_name" > Yamba 1 </ string >
< string name ="titleYamba" > Yamba </ string >
< string name ="titleStatus" > Status Update </ string >
< string name ="hintText" > Please enter your 140-character status </ string >
< string name ="buttonUpdate" > Update </ string >
</ resources >

2. 在res目录下添加values-zh-rCN目录,然后复制res\values\strings.xml到新建的目录下

3. 打开res\values-zh-rCN\strings.xml,编辑其内容为

ContractedBlock.gif ExpandedBlockStart.gif res\values-zh-rCN\strings.xml
 
   
<? xml version="1.0" encoding="utf-8" ?>
< resources >
< string name ="app_name" > Yamba </ string >
< string name ="titleYamba" > Yamba </ string >
< string name ="titleStatus" > 状态更新 </ string >
< string name ="hintText" > 请输入140字内信息 </ string >
< string name ="buttonUpdate" > 更新 </ string >
</ resources >

OK,大功告成!

部署到模拟器上,来看看吧。假设默认Custom Locale为en_US

2011060822242396.png 2011060822243884.png

修改Custom Locale为简体中文zh_CN

2011060822250335.png

再打开应用看,已经从简体中文的资源文件中提取了对应的配置

2011060822253048.png

 

android是如何定位这个资源文件的呢?

我们来看下第2步的目录名:values-zh-rCN,拆分成3部分为:values, zh, rCN。values不用解释了,可以明白是values目录,zh是语言的双字符简写,rCN的r表示region,CN是地区的双字符简写。

如果系统设置的Custom Locale,无对应的本地化资源文件,那么就会取默认的res\values\strings.xml。

 

各国语言缩写  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://blog.csdn.net/lijiecong/archive/2009/11/03/4764947.aspx

走的多了,就有了自己的路!

转载于:https://www.cnblogs.com/JamesL/archive/2011/06/08/2075763.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值