Смена темы по повороту - PullRequest
0 голосов
/ 09 июня 2018

У меня много проблем с темами в моем приложении, при повороте экрана на альбомную, тема меняется и возвращается в режим «по умолчанию», я использую режим AppNompat DayNight, при повороте экрана, режим обратно"день".Я уже попробовал несколько вещей, но сохраняю все содержимое приложения и воссоздаю действие в onResume. Установка новой темы (ночь) становится очень тяжелой, с задержкой от 2 до 3 секунд, что полностью нарушает работу пользователя при возврате.на утилиту восстановления.

Манифест

 <activity
        android:name=".videoPlayer.PlayerActivity"
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize|screenLayout|smallestScreenSize|uiMode"
        android:label="Player"
         />

моя тема

    <style name="AppTheme" parent="Theme.AppCompat.DayNight.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>
    <item name="colorAccent">@color/secondary</item>
    <item name="android:statusBarColor">@color/primary_dark</item>
    <item name="android:textColorSecondary">@color/backgroundColor</item>
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:textColorPrimary">@color/primary_text</item>
</style>

установить тему DayNight наMainActivity

     getDelegate().setLocalNightMode(
                    AppCompatDelegate.MODE_NIGHT_YES);
            recreate();

1 Ответ

0 голосов
/ 09 июня 2018

После нескольких часов поиска я просто добавил:

 getDelegate().setLocalNightMode(
                    AppCompatDelegate.MODE_NIGHT_YES);

В класс, расширяющий Application.

...