Я создал функцию PreferenceActivity, которая позволяет пользователю выбирать тему, которую он хочет применить ко всему приложению.Как изменить текущую тему во время работы в Android
Когда пользователь выбирает тему, этот код будет выполнен:
if (...) {
getApplication().setTheme(R.style.BlackTheme);
} else {
getApplication().setTheme(R.style.LightTheme);
}
Но, несмотря на то, что я проверил с помощью отладчика, что код выполняется, я не вижу каких-либо изменений в пользовательский интерфейс.
Темы определены в res/values/styles.xml
и Eclipse не обнаруживает ошибок.
<resources>
<style name="LightTheme" parent="@android:style/Theme.Light">
</style>
<style name="BlackTheme" parent="@android:style/Theme.Black">
</style>
</resources>
Любое представление о том, что может произойти и как его исправить? Должен ли я позвонить setTheme
в любой специальной точке кода? Мое приложение состоит из нескольких видов деятельности, если это помогает.
http://stackoverflow.com/a/32111974/1318946 –