Android(安卓)语言环境设置Locale的设置
16lz
2021-01-24
原创文章,如有转载,请注明出处:http://blog.csdn.net/myth13141314/article/details/70224168
开发过程中需要将App的语言环境设置为英语,记录如下
Resources resources = context.getResources();Configuration configuration = resources.getConfiguration();configuration.locale = locale;resources.updateConfiguration(configuration, resources.getDisplayMetrics());//更新配置
以上的设置可以让strings.xml选择英文,但是用DateUtils.getRelativeTimeSpanString()获得的时间字符串却还是中文的
最后找到的解决方案
public void forceLocale(Locale locale) { Configuration conf = context.getResources().getConfiguration(); updateConfiguration(conf, locale); context.getResources().updateConfiguration(conf, context.getResources().getDisplayMetrics()); Configuration systemConf = Resources.getSystem().getConfiguration(); updateConfiguration(systemConf, locale); Resources.getSystem().updateConfiguration(conf, context.getResources().getDisplayMetrics()); Locale.setDefault(locale);}public void updateConfiguration(Configuration conf, Locale locale) { if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1){ conf.setLocale(locale); }else { //noinspection deprecation conf.locale = locale; }}
欢迎关注我的公众号,和我一起每天进步一点点!
更多相关文章
- Android(安卓)SDK开发环境Eclipse安装搭建笔记
- Android(安卓)TTS学习――TTS初体验(中)
- 【Android】 JNI入门 - NDK从入门到精通
- Android各国语言对照表
- 修改android 开机之后的默认语言成中文
- TextToSpeech 文本自动朗读
- Android(安卓)NDK: Could not find application project directo
- [整]Android(安卓)SlidingMenu Demo 环境搭建