Android LayoutDirection, установленный на RTL, не всегда работает - PullRequest
0 голосов
/ 18 марта 2019

У меня есть Android-приложение, для которого мне нужно настроить макет всего приложения на RTL. Я делаю это с помощью атрибута xml android:layoutDirection="rtl".

Все работает нормально, пока в одном из моих занятий мне не нужно вручную finish() Упражнение и вернуться к предыдущему действию и впредь каждое представление, в котором я вручную включил направление RTL, возвращается к * Режим 1007 *, пока я полностью не закрою приложение и не запустите его снова.

Я использую этот фрагмент кода в моем BaseActivity, чтобы также заставить язык, который до сих пор работал нормально.

override fun onResume() {
    applyLang()
    super.onResume()
}
private fun applyLang() {
    val dm = resources.displayMetrics
    val conf = resources.configuration
    val locale = Locale(FA_LANG.toLowerCase())
    Locale.setDefault(locale)
    conf.setLocale(locale)
    resources.updateConfiguration(conf, dm)
}

Примечания: Я попытался вставить следующий код в onCreate моего BaseActivity безрезультатно:

getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL);

1 Ответ

0 голосов
/ 19 марта 2019

Вы пытались добавить этот android:supportsRtl="true" к элементу <application> в файле манифеста?

...