【发布时间】:2012-07-30 13:29:14
【问题描述】:
我在我的应用中实现了两个简单的主题,您可以在 SettingsActivity (extending PreferenceActivity) 中选择它们。
此时,当您更改主题时,它仅应用于新创建的活动,因为您调用设置的活动是活动堆栈中的旧活动。
我搜索了很多,发现这个非常有用:how to restart an activity。
顺便说一句,我并不完全清楚这段代码的放置位置。使其工作的唯一方法是将其放入onRestart() 方法中,
但这是对 CPU、电池和用户体验的巨大浪费。
有什么帮助吗?
【问题讨论】:
-
你的问题到底是什么?
-
我需要将新选择的主题应用到所有活动中。为了实现这一点,我还需要重新创建旧的。我该怎么做?
-
如果主题发生变化,则强制用户回到应用程序的开头,以便重新创建所有活动。
-
好的,我该怎么做?在哪里?基本上现在用户可以输入设置,更改主题并使用后退按钮返回(从 OptionsMenu 调用设置)。
标签: android android-activity preferenceactivity android-theme