2012-04-06 28 views
3

我正在構建一個Android應用程序,我需要爲白天和夜晚模式提供兩種不同的主題:不同的顏色和不同的繪圖。Android:如何處理日/夜主題

這樣做的最佳方法是什麼?

我注意到一個名爲UiModeManager的服務,但我不確定它是否像我期望的那樣工作。我在drawable-mdpi和drawable-night-mdpi中放置了兩個不同的位圖(具有相同的名稱),並創建了一個顯示該位圖的Activity。

我試圖通過把在OnCreate()切換白天/夜間模式:

UiModeManager uiManager = (UiModeManager) getSystemService(Context.UI_MODE_SERVICE); 
    uiManager.setNightMode(UiModeManager.MODE_NIGHT_YES); 

但是Android始終顯示「日」的版本。

任何建議或暗示,將不勝感激。

感謝, 莫里吉奧

回答

1

HoneycombGallery Sample先後爲主題(背景+繪圖資源等等)日/夜切換。他們只定義了兩個主題,並通過setTheme()將其設置在代碼中。也許這可以幫助你

編輯:根據文檔setNightMode()「夜間模式的改變只有在汽車或桌面模式在設備上啓用時纔有效。」