2013-09-16 74 views
0

我正在開發一個應用程序,並且我想要一個夜晚模式選項。我已經創建了兩個名爲HoloLight和HoloDark的主題。我可以在應用程序清單中設置這些主題,並且它們都可以正常工作。問題是我找不到用代碼在兩者之間切換的方法。有沒有一個好的方法來做到這一點?在應用程序運行時更改主題

回答

1

您可以使用的onCreate setTheme方法()方法類似

setTheme(android.R.style.Theme_Black); 

這應該是上面的setContentView

+0

這仍然沒有讓它改變。我需要在選中複選框時進行更改。 – AquaMorph

+0

可能需要刷新checkBox偵聽器上的活動。 – Ashok

0


只能前的setContentView改變主題。
setTheme(android.R.style.HoloDark);
所以基本上改變主題的應用程序,你將不得不重新啓動活動。請參閱this example。如果你有一些數據要保存,保存在實例狀態由活動使用這些功能,
onSaveInstanceState(Bundle)
onRestoreInstanceState(Bundle)

相關問題