`

6.4 Android国际化和本地化

阅读更多
何谓国际化和本地化呢?就是在资源文件夹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 工程运行效果图七
                                                          出自《Android开发案例驱动教程》第六章
  • 大小: 6.7 KB
  • 大小: 20.9 KB
  • 大小: 18.1 KB
  • 大小: 18.1 KB
分享到:
评论

相关推荐

    Android开发案例驱动教程 配套代码

    6.4 Android国际化和本地化 118 本章小结 121 第7章 UI布局 122 7.1 FrameLayout 122 7.1.1 TextSwitcher 124 7.1.2 ImageSwitcher 126 7.1.3 DatePicker 129 7.1.4 TimePicker 131 7.1.5 ScrollView 133 ...

    《Android高级编程》

    6.4 Android中的数据库 6.4.1 SQLite简介 6.4.2 Cursor和内容值 6.4.3 使用Android数据库 6.5 内容提供器简介 6.5.1 使用内容提供器 6.5.2 本地Android内容提供器 6.5.3 创建一个新的内容提供器 6.5.4 创建和使用...

    Android高级编程--源代码

    6.4 Android中的数据库 175 6.4.1 SQLite简介 175 6.4.2 Cursor和内容值 176 6.4.3 使用Android数据库 177 6.5 内容提供器简介 189 6.5.1 使用内容提供器 190 6.5.2 本地Android内容提供器 192 6.5.3 创建一...

    Android技术内幕.系统卷(扫描版)

    1.1.2 android的初始化流程 /5 1.1.3 各个层次之间的相互关系 /8 1.1.4 android系统开发(移植)和应用开发 /11 1.2 获取和编译android的源码 /13 1.2.1 环境配置 /13 1.2.2 获取android源码 /14 1.2.3 编译android...

    疯狂Android讲义源码

     6.11 国际化和资源自适应 251  6.11.1 Java国际化的思路 252  6.11.2 Java支持的语言和国家 252  6.11.3 完成程序国际化 253  6.11.4 为Android应用提供国际化  资源 255  6.11.5 国际化Android应用 256  ...

    《Android系统源代码情景分析》

    1.3 下载、编译和运行Android源代码 1.3.1 下载Android源代码 1.3.2 编译Android源代码 1.3.3 运行Android模拟器 1.4 下载、编译和运行Android内核源代码 1.4.1 下载Android内核源代码 1.4.2 编译...

    精通Android游戏开发

    156 6.4.8 创建运动控制器 158 6.4.9 声音类 165 6.4.10 本地接口类 174 6.5 编写本地层 176 6.5.1 初始化游戏循环 177 6.5.2 用c到java的回调级联传递消息 179 6.6 编译本地库 185 6.6.1 编写makefile 186 6.6.2 ...

    Android高级编程.pdf

    6.4 Android中的数据库 6.4.1 SQLite简介 6.4.2 Cursor和内容值 6.4.3 使用Android数据库 6.5 内容提供器简介 6.5.1 使用内容提供器 6.5.2 本地Android内容提供器 6.5.3 创建一个新的内容提供器 6.5.4 创建和使用...

    精通ANDROID 3(中文版)1/2

    6.4 结合使用适配器和AdapterView  6.4.1 基本的列表控件:ListView  6.4.2 GridView控件  6.4.3 Spinner控件  6.4.4 Gallery控件  6.4.5 创建自定义适配器  6.4.6 Android中的其他控件  6.5 样式和...

    Android程序设计基础

    通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,谷歌公司希望能建立一个标准化、开放式的移动电话软件平台,这样必将推进更好、更快的创新,为移动用户提供不可思议的丰富应用和服务。...

    Android系统源代码情景分析-罗升阳-源码

    1.3 下载、编译和运行Android源代码 1.3.1 下载Android源代码 1.3.2 编译Android源代码 1.3.3 运行Android模拟器 1.4 下载、编译和运行Android内核源代码 1.4.1 下载Android内核源代码 1.4.2 编译Android内核...

    疯狂Android讲义.part2

    6.11 国际化和资源自适应 251 6.11.1 Java国际化的思路 252 6.11.2 Java支持的语言和国家 252 6.11.3 完成程序国际化 253 6.11.4 为Android应用提供国际化 资源 255 6.11.5 国际化Android应用 256 6.12 本章小结 258...

    疯狂Android讲义.part1

    6.11 国际化和资源自适应 251 6.11.1 Java国际化的思路 252 6.11.2 Java支持的语言和国家 252 6.11.3 完成程序国际化 253 6.11.4 为Android应用提供国际化 资源 255 6.11.5 国际化Android应用 256 6.12 本章小结 258...

    Android基础教程

     《Android基础教程(第3版·修订版)》是一部关于Android开发的基础教程,采用Pragmatic系列图书一贯由浅入深、循序渐进的方式讲解了Android程序设计的核心概念和技术。书中不仅结合数独游戏开发案例形象生动地...

    Android技术内幕.系统卷 pdf

    1.1.2 android的初始化流程 /5 1.1.3 各个层次之间的相互关系 /8 1.1.4 android系统开发(移植)和应用开发 /11 1.2 获取和编译android的源码 /13 1.2.1 环境配置 /13 1.2.2 获取android源码 /14 1.2.3 编译...

    精通Android 3 (中文版)2/2

    6.4 结合使用适配器和AdapterView  6.4.1 基本的列表控件:ListView  6.4.2 GridView控件  6.4.3 Spinner控件  6.4.4 Gallery控件  6.4.5 创建自定义适配器  6.4.6 Android中的其他控件  6.5 样式和...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    W3C 万维网联盟,创建于1994年,是Web技术领域最具权威和影响力的国际中立性技术标准机构。主要的工作是发展 Web 规范,这些规范描述了 Web 的通信协议(比如 HTML 和 XHTML)和其他的构建模块。 NativeApp 使用...

    Android系统源代码情景分析光盘

    1.3 下载、编译和运行Android源代码........................... 3 1.3.1 下载Android源代码........................................... 4 1.3.2 编译Android源代码.............................................

Global site tag (gtag.js) - Google Analytics