关于代码迁移到androidx后,语言环境失效的问题

 @Override
    protected void attachBaseContext(Context newBase) {
        String selectedLanguage = AccountPreference.getLanguage();
        context = LanguageUtil.attachBaseContext(newBase, selectedLanguage);
        super.attachBaseContext(context);
    }

    // fix change language issue after migrate to AndroidX
    // https://stackoverflow.com/questions/55265834/change-locale-not-work-after-migrate-to-androidx
    @Override
    public void applyOverrideConfiguration(Configuration overrideConfiguration) {
        if (overrideConfiguration != null) {
            int uiMode = overrideConfiguration.uiMode;
            overrideConfiguration.setTo(getBaseContext().getResources().getConfiguration());
            overrideConfiguration.uiMode = uiMode;
        }
        super.applyOverrideConfiguration(overrideConfiguration);
    }

完美解决

你可能感兴趣的:(关于代码迁移到androidx后,语言环境失效的问题)