Я работаю над приложением для Android на Kotlin и хочу, чтобы пользователи могли переключаться между светлой и темной темами в режиме реального времени, не перезапуская приложение. Я пробовал использовать метод AppCompatDelegate.setDefaultNightMode(), но тема не обновляется сразу на всех экранах.
Вот что я сделал:
- На экране настроек приложения добавлен переключатель для переключения тем.
- Использован AppCompatDelegate.setDefaultNightMode() для применения темы на основе переключателя состояние.
Однако обновляется только текущий экран, а при переходе к другим экранам тема не применяется немедленно. Есть ли способ реализовать переключение тем в реальном времени по всему приложению без его перезапуска? Должен ли я использовать LiveData, ViewModel или что-то еще, чтобы наблюдать за глобальными изменениями темы?
Я хочу, чтобы тема применялась сразу ко всему приложению после переключения, без необходимости перезапуска или возврата к главный экран.
Подробнее здесь:
https://stackoverflow.com/questions/791 ... ith-kotlin