谓国际化和本地化呢?就是在资源文件夹res内建立不同国家语言的文件,这些国家语言的文件命名是有规定的,具体参见表6-1。当用户设置手机的语言时,程序能根据用户选择的语言情况,而加载相对应的语言文件。用户感受到是程序的本地化,而对于开发人员来讲就是程序实现了国际化。
在本例中实现了一个注册的界面,它可以实现中文简体和中文繁体的本地化过程,编写的string.xml和文件夹命名如表6-1。
表6-1 文件命名对比表
values/strings.xml 默认
values-zh-rCN/strings.xml 中文(简体)
values-zh-rTW/strings.xml 中文(繁体)
res文件夹内的目录结构如图6-26所示。
图6-26 res目录结构
需要创建三个strings.xml文件,默认是英文,文件的位置在chapter6_10/res/values/strings.xml,实现代码如下。在手机“设置”->“语言和键盘” ->“选择语言”中选择英文,回到应用界面如图6-27所示。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, button!</string>
<string name="app_name">chapter6_5</string>
<string name="registerInfo">Registration Information</string>
<string name="userName">Username:</string>
<string name="password">Password:</string>
<string name="sex">Sex:</string>
<string name="radioButton01">Male</string>
<string name="radioButton02">Female</string>
<string name="hobby">Hobby:</string>
<string name="checkBox01">Travel</string>
<string name="checkBox02">Read</string>
<string name="checkBox03">Net</string>
<string name="button01">Save</string>
</resources>
图6-27 工程运行效果图五
简体中文的文件位置在chapter6_10/res/values-zh-rCN/strings.xml,实现如代码清单6-19。在手机“设置”->“语言和键盘” ->“选择语言”中选择简体中文,回到应用界面如图6-28所示。
【代码清单6-19】 chapter6_10/res/values-zh-rCN/strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, button!</string>
<string name="app_name">chapter6_5</string>
<string name="registerInfo">注册信息</string>
<string name="userName">用户名:</string>
<string name="password">密码:</string>
<string name="sex">性别:</string>
<string name="radioButton01">男</string>
<string name="radioButton02">女</string>
<string name="hobby">爱好:</string>
<string name="checkBox01">旅游</string>
<string name="checkBox02">看书</string>
<string name="checkBox03">上网</string>
<string name="button01">保存</string>
</resources>
图6-28 工程运行效果图六
繁体中文的文件位置在chapter6_10/res/values-zh-rTW/strings.xml,实现如代码清单6-20。在手机“设置”->“语言和键盘” ->“选择语言”中选择繁体中文,回到应用界面如图6-29所示。
【代码清单6-20】 chapter6_10/res/values-zh-rTW/strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, button!</string>
<string name="app_name">chapter6_5</string>
<string name="registerInfo">註冊資訊</string>
<string name="userName">用戶名:</string>
<string name="password">密碼:</string>
<string name="sex">性別:</string>
<string name="radioButton01">男</string>
<string name="radioButton02">女</string>
<string name="hobby">愛好:</string>
<string name="checkBox01">旅遊</string>
<string name="checkBox02">看書</string>
<string name="checkBox03">上網</string>
<string name="button01">保存</string>
</resources>
图6-29 工程运行效果图七
在本例中实现了一个注册的界面,它可以实现中文简体和中文繁体的本地化过程,编写的string.xml和文件夹命名如表6-1。
表6-1 文件命名对比表
values/strings.xml 默认
values-zh-rCN/strings.xml 中文(简体)
values-zh-rTW/strings.xml 中文(繁体)
res文件夹内的目录结构如图6-26所示。
![](http://dl.iteye.com/upload/attachment/517135/89dbe903-a510-3424-84aa-4a91ade3c3ea.png)
图6-26 res目录结构
需要创建三个strings.xml文件,默认是英文,文件的位置在chapter6_10/res/values/strings.xml,实现代码如下。在手机“设置”->“语言和键盘” ->“选择语言”中选择英文,回到应用界面如图6-27所示。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, button!</string>
<string name="app_name">chapter6_5</string>
<string name="registerInfo">Registration Information</string>
<string name="userName">Username:</string>
<string name="password">Password:</string>
<string name="sex">Sex:</string>
<string name="radioButton01">Male</string>
<string name="radioButton02">Female</string>
<string name="hobby">Hobby:</string>
<string name="checkBox01">Travel</string>
<string name="checkBox02">Read</string>
<string name="checkBox03">Net</string>
<string name="button01">Save</string>
</resources>
![](http://dl.iteye.com/upload/attachment/517137/ecf198a7-17fe-3cf5-a13d-63f09da1b4b8.png)
图6-27 工程运行效果图五
简体中文的文件位置在chapter6_10/res/values-zh-rCN/strings.xml,实现如代码清单6-19。在手机“设置”->“语言和键盘” ->“选择语言”中选择简体中文,回到应用界面如图6-28所示。
【代码清单6-19】 chapter6_10/res/values-zh-rCN/strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, button!</string>
<string name="app_name">chapter6_5</string>
<string name="registerInfo">注册信息</string>
<string name="userName">用户名:</string>
<string name="password">密码:</string>
<string name="sex">性别:</string>
<string name="radioButton01">男</string>
<string name="radioButton02">女</string>
<string name="hobby">爱好:</string>
<string name="checkBox01">旅游</string>
<string name="checkBox02">看书</string>
<string name="checkBox03">上网</string>
<string name="button01">保存</string>
</resources>
![](http://dl.iteye.com/upload/attachment/517139/457df53a-ca90-361b-9e35-63501e1ea249.png)
图6-28 工程运行效果图六
繁体中文的文件位置在chapter6_10/res/values-zh-rTW/strings.xml,实现如代码清单6-20。在手机“设置”->“语言和键盘” ->“选择语言”中选择繁体中文,回到应用界面如图6-29所示。
【代码清单6-20】 chapter6_10/res/values-zh-rTW/strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, button!</string>
<string name="app_name">chapter6_5</string>
<string name="registerInfo">註冊資訊</string>
<string name="userName">用戶名:</string>
<string name="password">密碼:</string>
<string name="sex">性別:</string>
<string name="radioButton01">男</string>
<string name="radioButton02">女</string>
<string name="hobby">愛好:</string>
<string name="checkBox01">旅遊</string>
<string name="checkBox02">看書</string>
<string name="checkBox03">上網</string>
<string name="button01">保存</string>
</resources>
![](http://dl.iteye.com/upload/attachment/517141/266bc806-ca71-369a-ae41-fb2985f73999.png)
图6-29 工程运行效果图七