安卓平台多语言的简单实现
2014-08-18 14:25
155 查看
这里,我们实现两个语言,简体中文和繁体中文。
在res目录下建议两个文件夹
values-zh-rCN
values-zh-rTW
两个文件夹下都有一个strings.xml文件。
两个同名文件的字符串表,id是一样的,但是,内容的语言不一样。
比如<string name="quit_dlg_title">提示</string>
<string name="quit_dlg_content">累了吧!休息一下吧!记得回来哦!</string>
<string name="quit_dlg_okbtn_title">好的</string>
<string name="quit_dlg_cacelbtn_title">点错了</string>
<string name="quit_dlg_title">提示</string>
<string name="quit_dlg_content">累了吧!休息一下吧!記得回來哦!</string>
<string name="quit_dlg_okbtn_title">好的</string>
<string name="quit_dlg_cacelbtn_title">點錯了</string>
这是一个给对话框用的字符串资源。
这时候在程序里
String strPackage = mContext.getApplication().getPackageName();
Resources mRes = mContext.getResources();
int id = mRes.getIdentifier("quit_dlg_title", "string", strPackage);//主要是这句
strTitle = mRes.getString(id);
这样,就把字符串给取到了。而不是通过
strTitle = mRes.getString(R.string.quit_dlg_title);
这样的方式来取,这样的话就不需要在代码文件开始处用
import导入R文件。因为正常的方法一旦包名更改,代码就得更改。
别的字符串就类似了,不再赘言。
在res目录下建议两个文件夹
values-zh-rCN
values-zh-rTW
两个文件夹下都有一个strings.xml文件。
两个同名文件的字符串表,id是一样的,但是,内容的语言不一样。
比如<string name="quit_dlg_title">提示</string>
<string name="quit_dlg_content">累了吧!休息一下吧!记得回来哦!</string>
<string name="quit_dlg_okbtn_title">好的</string>
<string name="quit_dlg_cacelbtn_title">点错了</string>
<string name="quit_dlg_title">提示</string>
<string name="quit_dlg_content">累了吧!休息一下吧!記得回來哦!</string>
<string name="quit_dlg_okbtn_title">好的</string>
<string name="quit_dlg_cacelbtn_title">點錯了</string>
这是一个给对话框用的字符串资源。
这时候在程序里
String strPackage = mContext.getApplication().getPackageName();
Resources mRes = mContext.getResources();
int id = mRes.getIdentifier("quit_dlg_title", "string", strPackage);//主要是这句
strTitle = mRes.getString(id);
这样,就把字符串给取到了。而不是通过
strTitle = mRes.getString(R.string.quit_dlg_title);
这样的方式来取,这样的话就不需要在代码文件开始处用
import导入R文件。因为正常的方法一旦包名更改,代码就得更改。
别的字符串就类似了,不再赘言。
相关文章推荐
- 简单实现Android平台多语言
- shell语言常用简单实现安卓手机终端的简单操作语句.bat
- .NET 平台上动态语言实现 IronPython 1.0 Beta 1 完成
- .net平台 基于 XMPP协议的即时消息服务端简单实现
- 一个简单的读写锁的实现(WINDOWS平台)
- AutoHotkey界面语言切换与检测升级的简单实现 [转]
- 简单OS开发前奏(三)操作系统装载过程及BootSector的汇编语言实现
- D语言中的内联汇编在x86平台上的实现
- 分清“语言/规范”以及“平台/实现”,以及跨平台.NET开发(转)
- 用RMI实现一个简单的实时聊天系统(java语言)
- Winform程序多语言国际化实现的简单方法
- 用最简单有效的办法实现Winform的全球化多国语言版本软件
- .net平台 基于 XMPP协议的即时消息服务端简单实现
- delphi 实现多语言界面的最简单方法
- asp.net 2.0 三层架构的实现(最最原始,简单,一般, 但不平凡)用通俗的语言说出难以理解的。。。
- Dev的多语言简单实现
- Eclipse平台中“MessageDialog”消息对话框的简单实现
- 跨语言平台的RSA加密、解密、签名、验证算法的实现
- Winform程序多语言国际化实现的简单方法
- 三分钟实现一个插件平台和一个插件——基于最简单的OSGi.NET插件框架