Создание дневной и ночной темы и ее программная настройка будут работать. Но для этого также необходимо продублировать стили, просто указав различные рисунки / цвета.
Вместо этого вы можете поддерживать один стиль и использовать встроенную поддержку Android в режиме день / ночь. Точно так же, как у вас может быть несколько вариантов одного макета (для альбомной или портретной ориентации экрана), для рисования (для разных плотностей пикселей) и строки (для разных локалей), вы также можете иметь дневные и ночные версии ваших рисунков и цветов. Спецификаторами являются «-night» и «-notnight», но вы, вероятно, захотите использовать «-night» или ничего, делая вашу дневную версию по умолчанию. Например:
res/drawable/fancy-button-background.9.png
res/drawable-night/fancy-button-background.9.png
Android должен иметь возможность автоматически переключать дневной / ночной режим, но детали того, как и когда это происходит, мне немного неясны. Чтобы изменить режим самостоятельно, вы можете использовать UiModeManager#setNightMode()
. Просто убедитесь, что сначала включен автомобильный режим, используя enableCarMode(0)
.