Android 国际化
来源:互联网 发布:淘宝折扣券是真的吗 编辑:程序博客网 时间:2024/05/21 09:25
一.写一个Activity页面
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/textView"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button"/>
</LinearLayout>
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="app_name">I18nApp</string>
<stringname="action_settings">Settings</string>
<stringname="textView">internationalization</string>
<stringname="button">submit</string>
</resources>
三.现在运行应用程序
结果如图所示:
此时的应用显式的文字语言为默认语言
四.现在在res文件夹下创建两个新的文件夹
values-en
values-zh
然后把values文件夹中的strings.xml拷贝到这两个文件夹中,并把values-zh中的strings.xml改为如下代码:
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="app_name">国际化应用</string>
<stringname="action_settings">Settings</string>
<stringname="textView">国际化</string>
<stringname="button">提交</string>
</resources>
五.此时重新部署应用,并把模拟器语言其换成中文简体,观察结果问题:比如,有很多国家都说英语,我想实现美国英语应该怎么做国际化?
答:美国在国际化中用的英文字母是US,我们可以在res文件夹下创建一个values-en-rUS文件夹,然后把values-en文件夹下的strings.xml文件考进去,并修改为如下代码:
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="app_name">I18nApp(US)</string>
<stringname="action_settings">Settings</string>
<stringname="textView">internationalization(US)</string>
<stringname="button">submit(US)</string>
</resources>
再部署应用,并把语言环境改为美式英语,观察结果
到此不仅实现了国际化而且实现了多语言的国际化
问题:我想实现图片的国际化怎么办?
答:在res文嘉夹下创建drawable-en文件夹和drawable-zh文件夹,然后在这两个文件夹中分别放入如下两个图片:
在activity_main.xml加入如下代码:
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/picture"
android:contentDescription="@string/contentDescription"/>
//最后一行没有什么用处,只是作为备注,不会在页面上显示,因为这里加了一个对strings中contentDescription的引用,所以要在strings.xml文件中添加一行
//当然,最后一行不加也可以,只不过会出现一个警告
在strings.xml文件中加入一行代码:
<stringname="contentDescription">picture</string>
再次部署项目观察结果
中文环境为:
英文环境为:
到此图片国际化也已经实现
- Android国际化---Java国际化
- android 国际化
- Android 国际化
- android国际化
- Android-国际化
- Android 国际化
- android 国际化
- Android国际化
- android国际化
- android国际化
- android 国际化
- android国际化
- android国际化
- Android国际化
- Android国际化
- Android国际化
- Android国际化
- Android国际化
- Android之一键连接指定wifi
- 多个常见代码设计缺陷
- VB.NET 函数列表
- Android最佳实践之:StrictMode介绍
- 解决“要运行Visual Studio 2005 sp1,建议使用管理员权限”的问题
- Android 国际化
- Android JUnit单元测试基础实例
- 跨站脚本XSS
- 10785 - The Mad Numerologist
- Servlet Filter
- 测试Kettle在增量更新的时候是否支持级联——不支持(基于mysql)
- 配置Ubuntu的IP
- uva 10177 (2/3/4)-D Sqr/Rects/Cubes/Boxes?(空间几何规律)
- Ado.Net事务(transaction)