Android 7.0 设置语言失效

来源:互联网 发布:乐视手机如何备份数据 编辑:程序博客网 时间:2024/05/22 06:08

场景

App需要在内部设置语言 , 而不是跟随系统语言 , 7.0一下的机型没有问题 , 唯独在锤子手机上出现了问题 , 在设置为英文时 , 只要打开一些布局有WebView 或者有用到WebView的页面 , 语言就会变成中文 .

原因

应该是WebView在使用过程中会设置语言 , 比如说你在中国打开Facebook的网站 , 你的网页就是中文的 , 如果是美国就是英文的 , 这可能就是原因 .

解决

在使用到WebView的页面的onPause中 , 重新设置语言.

    @Override    protected void onPause() {        super.onPause();        Resources resources = getResources();        Configuration configuration = resources.getConfiguration();        DisplayMetrics displayMetrics = resources.getDisplayMetrics();        if (isChina) {            configuration.locale = Locale.CHINA;        } else {            configuration.locale = Locale.ENGLISH;        }        resources.updateConfiguration(configuration, displayMetrics);    }