android中英文切换功能,Android APP 中英文切换

android中英文切换功能,Android APP 中英文切换实习期间 师父要求做 app 的中英文切换 就顺便记录了下 一 AndroidManif xml 文件 清单文件 在每个要切换语言的 Activity 下面添加 android configChange locale 13android configChange locale 4android launchMode singleTop 5android screenOrient

实习期间,师父要求做app的中英文切换,就顺便记录了下。

一、AndroidManifest.xml文件(清单文件)

在每个要切换语言的Activity下面添加:

android:configChanges=”locale”

1

3 android:configChanges=”locale”

4 android:launchMode=”singleTop”

5 android:screenOrientation=”portrait”

6 android:windowSoftInputMode=”adjustPan” >

7

添加权限: 

二、创建一个英文的strings.xml文件,目录名为values-en

D9Mo8EABwy0RQAAAABJRU5ErkJggg==

values/strings.xml这个为默认语言,如果values-en目录下的strings.xml不存在,那英文就会选取默认语言。

1

2

3 language

4 Settings

5 updating..

6

三、核心代码

1 /

2 * 刷新语言3 */

4 public voidupdateActivity(String sta) {5

6 //本地语言设置

7 Locale myLocale = newLocale(sta);8 Resources res =getResources();// 获得res资源对象9 DisplayMetrics dm =res.getDisplayMetrics();// 获得屏幕参数:主要是分辨率,像素等。10 Configuration conf =res.getConfiguration();// 获得设置对象11 conf.locale =myLocale;// 简体中文12 res.updateConfiguration(conf, dm);13 //startActivity((new Intent(this, TabActivity.class)));14 //this.finish();

15 }

String sta= getResources().getConfiguration().locale.getCountry()  //用于判断当前的语言

Locale.getDefault().getLanguage()//语言:取到的比如中文为zh,英文为en,日文为ko;

也可以调用此类

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 public classLanguageSettings {2

3 private static LanguageSettings language = null;4

5 private String currentLanguage = “zh”;6

7 privateLanguageSettings() {8 }9

10 public staticLanguageSettings getInstance() {11 if (language == null) {12 language = newLanguageSettings();13 } else{14

15 }16 returnlanguage;17 }18

19 publicString getCurrentLanguage() {20 returncurrentLanguage;21 }22

23 public voidswitchCurrentLanguage() {24 if (currentLanguage.equals(“zh”)) {25 currentLanguage = “en”;26 } else{27 currentLanguage = “zh”;28 }29 }30 }

LanguageSettings

1 //切换成英文

2 if(LanguageSettings.getInstance().getCurrentLanguage()3 .equals(“zh”)) {4 updateActivity(“en”);5 LanguageSettings.getInstance().switchCurrentLanguage();6 } else{7 //切换成中文

8 updateActivity(“zh”);9 LanguageSettings.getInstance().switchCurrentLanguage();10 }

LanguageSettings.getInstance().getCurrentLanguage() 给变量动态赋值的标识列,用于判断!(采用单例模式)

原文:http://www.cnblogs.com/tutuskys/p/4863146.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223536.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午1:58
下一篇 2026年3月17日 下午1:58


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号