0

我正在开发一个应用程序,我想要一个夜间模式选项。我已经创建了两个名为 HoloLight 和 HoloDark 的主题。我可以在应用程序清单中设置这些主题,它们都可以正常工作。问题是我找不到用代码在两者之间切换的方法。有没有好的方法来做到这一点?

4

2 回答 2

1

您可以在 onCreate() 方法中使用 setTheme 方法,例如

setTheme(android.R.style.Theme_Black); 

这应该高于 setContentView

于 2013-09-16T17:40:35.007 回答
0


您只能在 setcontentview 之前更改主题。
setTheme(android.R.style.HoloDark);
所以基本上要在应用程序中更改主题,您将不得不重新启动您的活动。请参阅此示例。如果您有一些数据要保存,请通过在活动中使用这些函数将其保存为实例状态,
onSaveInstanceState(Bundle)
onRestoreInstanceState(Bundle)

于 2013-09-16T17:45:57.997 回答