Добавить поддержку темы в существующее приложение для Android - PullRequest
1 голос
/ 19 марта 2019

Да, возможно, это еще один вопрос о стилях / темах Android и т. Д., Но я не смог найти решение, подходящее для моего случая:

У меня есть приложение с (вероятно, ничего необычного):

  • colors.xml - содержит много цветовых кодов
  • themes.xml - содержит водопад стилей (то есть у многих стилей есть родитель, у которого есть родители, у которых также есть родители ... например, BaseTheme, ModalBaseTheme имеет BaseTheme в качестве родителя, SpecialModalBaseTheme имеет ModalBaseThem в качестве родителя)
  • некоторые изображения в папке drawables

Когда я запускаю свое приложение, у меня появляется экран, на котором я могу выбрать то, что я назвал "Скин" (представьте, что у нас есть синий и красный скины), которые в основном имеют разные цвета (установленные в темах, поэтому разные темы). ) и разные образы.

После выбора темы оформления на этом экране приложение перезапускается с сохраненной информацией. Итак, моей первой интуицией была возможность выбрать другую папку resources в зависимости от выбранной темы оформления (обратите внимание, что каждый раз, когда я изменяю тему оформления, приложение перезапускается, поэтому это не должно быть проблемой, верно?). Это возможно?

Также пытался следовать многим учебникам, используя setTheme, но структура проекта не позволяет легко найти каждый onCreate или узнать, где установить каждую тему. Должен ли я инвестировать в этот подход?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...