转载请注明来源: http://blog.csdn.net/kjunchen/article/details/51312995

Android 应用开发支持不同的语言

创建区域目录和字符串文件

要支持更多的语言,在 res/ 下创建额外的 values 目录以一个连字符 ‘-’ 和 ISO 语言代码结尾命名。例如, values-es 目录包含了一些简单的资源,区域语言代码为 “es” 。Android设备在运行时,会根据语言环境的设置加载相应的资源。

一旦你决定支持某种语言,需要创建资源子目录和字符串资源文件。如:

MyProject/    res/       values/           strings.xml       values-es/           strings.xml       values-fr/           strings.xml

为每一种语言添加字符串值到相应的文件中。

在运行时,Android系统会根据用户设备当前的语言设置加载相应的字符串资源文件。

例如,下面是一些不同语言的字符串资源文件。

英语(默认语言), /values/strings.xml :

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="title">My Applicationstring>    <string name="hello_world">Hello World!string>resources>

西班牙语, /values-es/strings.xml :

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="title">Mi Aplicaciónstring>    <string name="hello_world">Hola Mundo!string>resources>

法语, /values-fr/strings.xml :

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="title">Mon Applicationstring>    <string name="hello_world">Bonjour le monde !string>resources>

使用字符串资源

我们可以在源代码和其他的XML文件中通过 < string > 元素中的 name 属性来引用字符串资源。

在源代码中可以使用 R.string.< string_name > 语法来引用资源。大多数方法都接受这种方式引用字符串资源。

例如:

// Get a string resource from your app's ResourcesString hello = getResources().getString(R.string.hello_world);// Or supply a string resource to a method that requires a stringTextView textView = new TextView(this);textView.setText(R.string.hello_world);

在其他的 XML 文件中,只要 XML 属性接受字符串值时都可以使用 @string/< string_name > 语法来引用字符串资源。

例如:

<TextView    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="@string/hello_world" />

Android 多语言文件夹

常见语言文件夹如下:

  • values-zh 中文
    • values-zh-rCN 中文(中国)
    • values-zh-rHK 中文(香港)
  • values-en 英文
    • values-en-rUS 英文(美国)
    • values-en-rGB 英文(英国)
  • values-de 德文
  • values-fr 法文
  • values-ja 日文
  • values-ko 韩文
  • values-es 西班牙文
  • values-it 意大利文
  • values-ar 阿拉伯文

如有问题欢迎加qq群讨论学习:365532949
HomePage:http://junkchen.com

更多相关文章

  1. C语言函数的递归(上)
  2. Android/winPhone7开发资源索引
  3. Android(安卓)源码学习资源
  4. Android(安卓)创建和使用公共library工程
  5. Android应用程序结构--比较偏的考试题目
  6. Android(安卓)程序适应多种多分辨率
  7. 每个Android开发者必须知道的资源集锦
  8. android第一天学习基本配置与安装过程和启动
  9. 六、ANDROID资源文件

随机推荐

  1. 如果不使用OAuth - PHP库,如何使用OAuth和
  2. 提交动态复选框表单并成对获取值
  3. It saves without an error, but it stil
  4. 单引号,双引号,javascript,HTML,转义字符
  5. PHP 网站模板核心类
  6. 如何在php数组中获取php键值
  7. WordPress注册和用户注册是分开的
  8. Php简单的html dom删除特定类的div
  9. 豆瓣的账号登录及api操作
  10. cenos下配置Apache+PHP最新版7.1.6+MySQL