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开发案例驱动教程》第六章

时间: 2024-09-17 03:11:40

6.4 Android国际化和本地化的相关文章

使用Dojo Toolkit向Web应用程序添加国际化和本地化功能

简介 Dojo Toolkit 是一个强大的 JavaScript 库,支持 Web 开发人员使用面向对象的窗口小部件,以极少的开发时间和精力创建富互联网应用程序 (Rich Internet Applications, RIA).这个库中包含 4 个程序包,分别为 Dojo(核心).Dijit(UI 框架).dojox(dojo 扩展)和 util.可按原样使用该工具包提供的功能,也可扩展该工具包并创建自己的窗口小部件.工具包中提供的功能包括 DOM 操作.使用 Ajax 开发.事件.数据存储

Android国际化资源文件自动化生成工具

一.工具起源            如果在做一个产品的过程当中,可能会涉及到多个apk的开发,而且要求实现多国语言.而这些apk可能会由多人分工共同完成.但如果这样的话,每个人都需要整理各自apk所要显示的文字交给专人来翻译.专人负责收集和翻译文字,翻译完了之后再交给每个开发者.比如这个产品中的所有apk都需要支持10国语言,也就是说每个开发人员,要拿着翻译好的文字,在各自负责的项目中创建这10个语种的资源文件,并且将这10个语种的文字依次放入到不同语种目录下的资源文件中.而且当apk写完后,后

IOS 解决推送本地国际化 loc-key 本地化失败的问题_IOS

正文 一.准备 推送本地国际化官方文档: {"aps":{"alert":{"title":"Shou","loc-key":"notification_push_live","loc-args": ["over140","broadcast test"]},"badge":0,"sound&quo

iOS 疑难杂症 — — 推送本地国际化 loc-key 本地化失败的问题

一.准备 推送本地国际化官方文档: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/TheNotificationPayload.html#//apple_ref/doc/uid/TP40008194-CH107-SW7 NWPusher 测试推送内容: {"aps":{"alert":

【Android】Android国际化

1. Android程序的国际化 -----------------------        国际化的英文单词是Internationalization,因为这个单词太长了,有时也简称为I18N,其中的I是这个单词的第一个字符,18表示中间省略的字母个数,而N代表这个单词的最后一个字母.所以,I18N也就是国际化的意思.Android程序国际化,也就是程序可以根据系统所使用的语言,将界面中的文字翻译成与之对应的语言.这样,可以让程序更加通用.Android可以通过资源文件非常方便的实现程序的国

Android国际化中用到的国家/地区 语言缩写代码

原文:http://blog.csdn.net/landi_web/article/details/6864230 internationalization (国际化)简称 i18n,因为在i和n之间还有18个字符,localization(本地化 ),简称L10n. 一般用语言_地区的形式表示一种语言,如  zh_CN, zh_TW.   各国语言缩写  http://www.loc.gov/standards/iso639-2/php/code_list.php 国家和地区简写 http:/

Android 国际化

由于公司的项目是投放 google play store , 所以要做国际化.国际化遇到的两个大问题 字符串国际化 布局样式国际化   一:字符串国际化        解决这个问题很简单,在res目录下放不同国家的value文件夹,在相应文件夹里的 strings.xml 文件放对应的语言即可.比如        二:布局样式国际化       中国人的阅读习惯是从左往右阅读.阿拉伯国家的阅读习惯是从右往左读.所以同一个布局在不同的语言环境下,显示的样式是不一样的.比如:       默认情况下

~~~用properties文件实现国际化与本地化的一个小例子~~~

JSP源文件如下: <%@ page import="java.io.*" %><%@ page import="java.util.*" %><%@ page import="java.awt.*" %> <%String languageDefault = Locale.getDefault().getLanguage();String countryDefault = Locale.getDefau

《Android开发案例驱动教程》

<Android开发案例驱动教程>   作者:关东升,赵志荣Java或C++程序员转变成为Android程序员 采用案例驱动模式展开讲解知识点,即介绍案例->案例涉及技术->展开知识点->总结的方式 本书作者从事多年一线开发和培训,讲解知识点力求细致,深入浅出 目    录 前言 第1章  Android操作系统概述 1 1.1  Android历史介绍 1 1.2  Android架构 1 1.3  Android平台介绍 2 1.4  现有智能手机操作系统比较 4 第2章