Android 判断当前系统语言
2017-10-26 15:19
281 查看
前言
欢迎大家我分享和推荐好用的代码段~~
声明
欢迎转载,但请保留文章原始出处:
CSDN : http://www.csdn.net
雨季o莫忧离: http://blog.csdn.net/luckkof
正文
列:zh_CN (1)方法1得到zh (2)方法2得到cn (3)方法3得到zh_CN
方法1:
方法2:
方法3:
android每个应用都保存着一份仅对自身有用的配置,被封装在 android.content.res.Configuration 类里,通过该类,我们可以修改语言参数,实现对应用语言的变更。首先获取 Configuration 对象: Java代码
Resources resource = getResources();
Configuration config = resource.getConfiguration();
然后设置 config 中的 locale 属性,选择需要的语言。locale属性为一个Locale类的对象,比如我们要设置应用的语言为英语,那么可以这样实现: Java代码
config.locale = Locale.ENGLISH;
或者要设置成系统默认的语言:Java代码
config.locale = Locale.getDefault();
最后,需要更新配置文件,执行下面的代码: Java代码
getBaseContext().getResources().updateConfiguration(config, null);
语言设置完成后,应用并不会自动刷新当前已经打开的Activity,所以为了刷新整个应用,目前比较通用的做法是重新启动应用: Java代码
Intent intent = new Intent();
intent.setClass(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
this.startActivity(intent);
另外需要注意的是,需要在Manifest.xml文件中的Activity中配置android:configChanges属性,通过配置该属性,Activity可以捕捉设备状态的变化: Xml代码
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:configChanges="locale" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
具体的实现请参考Demo: LanguageChangeDemo下载地址:https://github.com/hanyi/LocaleChangeDemo.git
欢迎大家我分享和推荐好用的代码段~~
声明
欢迎转载,但请保留文章原始出处:
CSDN : http://www.csdn.net
雨季o莫忧离: http://blog.csdn.net/luckkof
正文
列:zh_CN (1)方法1得到zh (2)方法2得到cn (3)方法3得到zh_CN
方法1:
import java.util.Locale; String locale = Locale.getDefault().getLanguage();
方法2:
import android.content.res.Configuration; import android.content.res.Resources; Resources res = mContext.getResources(); Configuration config = res.getConfiguration(); String locale = config.locale.getCountry();
方法3:
import java.util.Locale;String locale = Locale.getDefault().toString();
android每个应用都保存着一份仅对自身有用的配置,被封装在 android.content.res.Configuration 类里,通过该类,我们可以修改语言参数,实现对应用语言的变更。首先获取 Configuration 对象: Java代码
Resources resource = getResources();
Configuration config = resource.getConfiguration();
然后设置 config 中的 locale 属性,选择需要的语言。locale属性为一个Locale类的对象,比如我们要设置应用的语言为英语,那么可以这样实现: Java代码
config.locale = Locale.ENGLISH;
或者要设置成系统默认的语言:Java代码
config.locale = Locale.getDefault();
最后,需要更新配置文件,执行下面的代码: Java代码
getBaseContext().getResources().updateConfiguration(config, null);
语言设置完成后,应用并不会自动刷新当前已经打开的Activity,所以为了刷新整个应用,目前比较通用的做法是重新启动应用: Java代码
Intent intent = new Intent();
intent.setClass(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
this.startActivity(intent);
另外需要注意的是,需要在Manifest.xml文件中的Activity中配置android:configChanges属性,通过配置该属性,Activity可以捕捉设备状态的变化: Xml代码
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:configChanges="locale" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
具体的实现请参考Demo: LanguageChangeDemo下载地址:https://github.com/hanyi/LocaleChangeDemo.git
相关文章推荐
- Android 判断当前系统语言
- android判断当前系统用的是什么语言
- Android开发实用技巧:判断当前系统语言版本
- android判断当前系统用的是什么语言
- android判断当前系统用的是什么语言
- android判断当前系统用的是什么语言
- Android判断当前系统使用的语言
- Android判断国家以及系统当前的语言
- android判断当前系统的语言
- Android 判断当前系统语言
- Android判断当前系统语言
- Android判断当前系统语言
- Android 判断当前系统语言
- Android 判断当前系统语言
- Android编程实现获取当前系统语言及地区并更改语言的方法
- Android--获取当前系统的语言环境
- Android 判断当前语言环境是否是中文环境
- Android 判断当前语言环境是否是中文环境
- 判断当前android系统的尺寸。用来区分平板和手机,亲测。
- Android 判断当前语言环境是否是中文环境