1 回答

TA貢獻(xiàn)2036條經(jīng)驗(yàn) 獲得超8個贊
我設(shè)法克服了這個問題,但在活動中覆蓋了 onConfigurationChanged 并在清單中添加了這一行
android:configChanges="orientation|screenSize|layoutDirection|locale"
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
Locale locale = new Locale(presenter.getLanguage());
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
newConfig.setLocale(locale);
Locale.setDefault(locale);
newConfig.setLayoutDirection(locale);
this.createConfigurationContext(newConfig);
} else {
newConfig.locale = locale;
Locale.setDefault(locale);
newConfig.setLayoutDirection(locale);
getBaseContext().getResources().updateConfiguration(newConfig, getBaseContext().getResources().getDisplayMetrics());
}
}
添加回答
舉報