起因

我们在开发app可能会拓展国外市场,那么对包含英语在内的其它语言支持就很有必要了。

效果

思路

一:添加相关资源文件,并引用。

二:设置configuration,configuration里面指定语言类型。

三:在需要时候更换configuration即可。

实现

在res的values文件夹下新建相关语言类型的资源文件

右键新建资源文件,选择Locale,点击 >> 按钮

选择Language,以及地区(any region)即可

最后 文件名字和其他语言文件名字一样,strings即可。

在MyApplication里面的onCreate和onConfigurationChanged方法里面添加语言相关处理(onConfigurationChanged是为了处理横竖屏切换问题),给应用上下文对象添加configuration,configuration里面指定了当前语言。

public class MyApplication extends Application {

@Override

public void onCreate() {

super.onCreate();

languageWork();

}

@Override

public void onConfigurationChanged(Configuration newConfig) {

super.onConfigurationChanged(newConfig);

languageWork();

}

private void languageWork() {

//自己写的工具包(如下)

Locale locale = LanguageUtil.getLocale(this);

LanguageUtil.updateLocale(this, locale);

}

}

LanguageUtil如下(没整理过的小伙伴直接用即可),为了保证语言从A切换到B,在之后启动应用依旧使用B语言,我们需要将B语言存入本地。下次启动应用,设置即可。

public class LanguageUtil {

/**

* 中文

*/

public static final Locale LOCALE_CHINESE = Locale.CHINESE;

/**

* 英文

*/

public static final Locale LOCALE_ENGLISH = Locale.ENGLISH;

/**

* 俄文

*/

public static final Locale LOCALE_RUSSIAN = new Locale("ru");

private static final String LOCALE_SP = "LOCALE_SP";

private static final String LOCALE_SP_KEY =

android国际化设置语言后不起作用,Android支持国际化多语言那点事(支持8.0+)相关推荐

  1. android国际化设置语言后不起作用,Android旋转屏幕后国际化语言失效的解决的方法...

    本文已同步至个人博客:liyuyu.cn 近期在项目中使用到了国际化多语言(英文+中文),但在使用时发现了一个问题.当屏幕旋转后.APP语言(中文)自己主动转换为了系统语言(英文).设置了Activi ...

  2. 手机android主题设置在哪里,手机如何安装Android主题

    手机如何安装Android主题 很多人用的智能手机用的是Android系统,那么大家知道要手机如何安装Android主题呢?下面一起来看看! 1.使用数据线连接计算机和手机,并运行91手机助手,点击界 ...

  3. Android Studio设置代理后显示:Cause: dl.google.com:443 failed to respond错误

    以前在Android Studio 的Preference设置中,设置了socks代理后,就能够正常的进行更新和自动下载依赖,最近老是有问题,今天在添加了新的依赖后,点编译按钮就显示 Cause: d ...

  4. c语言空循环的作用是什么意思,C语言空循环和无穷循环有的区别

    跟大家普及下空循环和无穷循环的概念,空循环并不会无休止地进行下去–在重复预先指定的次数后,它就会退出循环.无穷循环会无休止地进行下去,并且永远不会退出循环.把空循环和无穷循环对比一下,就能很好地说明它 ...

  5. c语言字面量的作用是为变量,C语言 字面量

    在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation). 几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数.浮点数以及字符串: 而有很多也对布尔类 ...

  6. c语言字面量的作用是为变量,C语言(五) C 全局变量,局部变量,静态变量和常量...

    一. 全局变量 全局变量是在所有函数体的外部定义的,程序的所有部分(其他文件的代码)都可以使用.全局变量不受作用域的影响.全局变量的生命周期一直到程序的结束,全局变量是静态存储方式. 例: #incl ...

  7. android点击运行后无法显示设备,Android仿真器除了黑屏外什么都不显示,adb设备显示“设备离线”...

    我只是想开始在Android中进行开发.因此,问题是当我尝试通过发出命令emulator @ A2来启动仿真器时,屏幕上会出现一个仿真器.但是即使等待了2-3个小时,它所显示的只是一个黑屏.甚至没有a ...

  8. Android studio设置相机权限,如何强制将“android.permission.CAMERA”权限添加到Codename中的清单中...

    我试图在Codename One中显示后置摄像头的实时预览.我使用原生界面(我首先针对的是Android). 为了让我的应用程序能够使用相机而不会弄乱构建提示,我在主窗体中添加了以下行: if (Ca ...

  9. android 代码设置 键盘适应_详细讲解Android修改键盘文字的方法

    1.首先,针对EditText的设置 在xml布局中,针对EditText的设置. android:layout_width="match_parent" android:layo ...

最新文章

  1. 3D目标检测论文阅读多角度解析
  2. Rsession: R sessions wrapping for Java
  3. 从U盘无人值守安装linux操作系统
  4. 一身漏洞狂奔24年!人人都用的WiFi被曝重大漏洞,随时成为监控你的工具
  5. QT的QQmlIncubationController类的使用
  6. 九、oracle 事务
  7. 有意思的onerror的用法
  8. el-table列宽设置百分比无效;el-table使用min-width设置百分比;el-table百分比设置无效;
  9. 如何吸引财富呢?请做这六件事吧!
  10. 女孩子偷偷学好软件测试,想要年薪30w也没有很难!
  11. thinkphp生成php文件,thinkphp使用buildHtml生成静态文件的方法
  12. element-ui的tree配合原生
  13. 360手机助手pc版 v2.4.0.1265 官方版
  14. php 限制字数_PHP中如何正确统计中文字数
  15. 计算机无法识别建行网银盾,建行网银盾无法识别怎么办 几招办法教你轻松解决...
  16. c语言bellman算法,深入理解Bellman-Ford(SPFA)算法
  17. Win10/Win7 打印机 [有线局域网共享]
  18. java中计算出差天数
  19. 优选法中的黄金分割法
  20. 火爆外网的ChatGPT,改Bug,敲代码不在话下

热门文章

  1. 方法比知识重要,人品比能力重要(转)
  2. 中国量化对冲策略及产品的大全解读
  3. hbuildx打包成apk_HBuilderX生成本地打包App资源
  4. 个人简历面试题pid
  5. 安卓手机标定相机IMU外参过程
  6. ARIS项目落地利刃之风险导入
  7. python-TGI指数分析实战
  8. 微信支付商户(自有)接入前准备
  9. #708 – 将文件拖入到WPF应用程序中(Dragging a File Into a WPF Application)
  10. hihoCoder 1362 修补木桶