Android-更改配置的语言环境后资源返回默认值

时间:2019-01-20 03:41:46

标签: android resources locale

我想通过Java代码更改应用的语言环境。

这是我的代码:

    String language = "vi_VN";

    Locale locale = new Locale(language);
    Locale.setDefault(locale);

    Resources resources = getResources();
    final DisplayMetrics dm = resources.getDisplayMetrics();
    final Configuration configuration = resources.getConfiguration();
    configuration.setLocale(locale);

    resources.updateConfiguration(configuration, dm);

Androidmanifest:

    <activity android:name=".MainActivity" android:configChanges="locale">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

但是,在调用resource.updateConfiguration之后,资源将返回默认值。

请帮助我查找设置代码中的问题。谢谢:((

已更新:我发现我的设置存在问题,语言的值不正确,必须为'vi'。感谢您阅读:D

0 个答案:

没有答案