Android应用实现多语言切换

时间:2022-01-09 15:53:59

http://blog.sina.com.cn/s/blog_682210e70102w7zo.html

本文来自于:http://www.linuxidc.com/Linux/2014-09/106579.htm

关于Android应用实现多语言切换,有好几种办法,网上也搜到很多资料,这里有个简单有效的办法。

步骤如下:

在资源文件中新建一个文件夹values-en,在里面新建一个strings.xml,把默认values文件夹中的strings.xml中的内容拷贝一份到values-en中的strings.xml,再把该文件夹中的中文内容转换为英文,例如设置转换为set

然后在主Activity中添加一个方法

代码如下:

        public void switchLanguage(Locale locale) {
                Configuration config = getResources().getConfiguration();// 获得设置对象
                Resources resources = getResources();// 获得res资源对象
                DisplayMetrics dm = resources.getDisplayMetrics();// 获得屏幕参数:主要是分辨率,像素等。
                config.locale = locale; // 简体中文
                resources.updateConfiguration(config, dm);
        }

然后再在OnCreate函数中调用(也必须在OnCreate函数中调用才行)

例如:

switchLanguage(Locale.getDefault());  或  switchLanguage(Locale.US);

最后需要注意的是:还需要在AndroidManifest.xml文件中要配置两个地方:

1、在对应activity节点中加上这个属性: android:configChanges="locale"

2、添加权限:

更多Android相关信息见Android 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=11

本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-09/106579.htm

本篇文章来源于 Linux公社网站(www.linuxidc.com 原文链接:http://www.linuxidc.com/Linux/2014-09/106579.htm

 

 

switchLanguage(); 要在oncreate()中设置且要在setContentView前设置,否则布局文件中引用的字符串改变语言会无效。

中文 values-zh

英文 values-en

此种方法建议在登录界面进行语言设置

Android应用实现多语言切换

Android应用实现多语言切换
项目:http://vdisk.weibo.com/s/uDVjIdJUl5LIU

 微盘目录:/android_2016/应用多语言langeChage.rar


 

 

其他方法:

http://blog.csdn.net/sodino/article/details/6596709

http://www.bubuko.com/infodetail-656150.html

http://www.cnblogs.com/anee/archive/2013/02/19/2916828.html

http://my.oschina.net/jack1900/blog/290694