zoukankan      html  css  js  c++  java
  • Android应用程序的语言切换

           最近项目中用用到语言切换功能,第一想到的就是资源文件,没错。

           在资源文件中新建一个文件夹values-en,在里面新建一个strings.xml,把默认values文件夹中的strings.xml中的内容Copy至values-en中的strings.xml,再把该文件夹中的中文内容转换为英文,例如<string name="set">设置</string>转换为<string name="set">set</string>

            然后再主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函数中调用

           还得注意的是:在AndroidManifest.xml中要配置一下

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

            添加权限: <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />

  • 相关阅读:
    springboot mail+Thymeleaf模板
    jax-rs示例
    java enum的一种写法记录
    lintcode 最大子数组III
    lintcode 单词接龙II
    idea springboot热部署无效问题
    java8 Optional正确使用姿势
    Spring根据包名获取包路径下的所有类
    无状态shiro认证组件(禁用默认session)
    获取资源文件工具类
  • 原文地址:https://www.cnblogs.com/error404/p/3010514.html
Copyright © 2011-2022 走看看