这里,我们实现两个语言,简体中文和繁体中文。
在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文件。因为正常的方法一旦包名更改,代码就得更改。
别的字符串就类似了,不再赘言。