Изменение языка во время выполнения для устройства выше 7.0 - PullRequest
0 голосов
/ 10 октября 2019

У меня проблема, действительно похожая на эту: Проблема с изменением языка после обновления до androidx.appcompat: appcompat: 1.1.0 за исключением того, что он отлично работает для меня для Api 24 и ниже, но этовообще не работает для Api 26 и выше (не смог протестировать Api 25).

Зависимости Gradle

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'androidx.appcompat:appcompat:1.0.2' //DO NOT UPGRADE - Translation issue
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'androidx.vectordrawable:vectordrawable:1.1.0'
    testImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    testImplementation 'androidx.test:core:1.2.0'
    testImplementation 'androidx.test.ext:junit:1.1.1'
    implementation 'com.google.android.material:material:1.0.0'
    implementation fileTree(include: ['*.jar'], dir: 'libs')
}

Код срабатывает при нажатии на кнопку

 /**
     * Select language application
     */
    public static void defineLanguage(ImageButton button, final String value, final Activity activity, final Activity source) {
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Locale locale = new Locale(value);
                Locale.setDefault(locale);
                Configuration config = new Configuration();
                config.locale = locale;
                activity.getApplicationContext().getResources().updateConfiguration(config, 
    activity.getBaseContext().getResources().getDisplayMetrics());

                Intent intent = new Intent(activity, source.getClass());
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                activity.finish();
                activity.startActivity(intent);
            }
        });
    }

Стоит ли мне ждать исправления от Google или моя проблема немного отличается?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...