android夜間模式實現

2021-07-30 13:40:55 字數 854 閱讀 3859

.我們來**一下夜間模式。

問:android夜間模式的實現有幾種?

答:有好多種。(:◎)≡

怎麼用這個方法呢?

接下來怎麼去自定義自己的日夜間模式呢?

方法與之前的nightmodehelper類似,建立帶-night字尾的資料夾(比如:values-night),然後新增你的資源檔案,資源檔案需要相同的命名(比如:colors.xml),這樣就把夜間資源和日間資源關聯起來了。這裡注意一下,如果是drawable-xxhdpi中的資源需要夜間模式,這些夜間的資源就應該放在drawable-night-xxhdpi資料夾中。這裡其實靈活性很大的,比如你可以在values-night中建立乙個strings.xml,實現日夜間顯示不同的文字。甚至你可以在layout-night中建立乙個同樣名字的布局檔案,實現日夜間顯示不同的布局。

還有什麼?

還有個方法也提一下,就是setlocalnightmode(***),同樣可以設定上述提到的四個值。但是這個方法只能通過getdelegate().setlocalnightmode(***)呼叫,這個方法只對當前activity有效果,並且設定完之後需要recreate()才能使其生效。

完了沒?

還沒完,夜間模式還有個讓人頭疼的問題就是,當前頁面和已經開啟的頁面的實時更新。之前說的這麼多夜間模式方案,都是讓之後新的頁面獲取新的資源,而舊的頁面怎麼辦?

Android 夜間模式

color colorprimary color colorprimarydark color coloraccent 新增value night路徑,設定夜間模式下的color檔案。正常的color檔案 008577 00574b d81b60 24256e 夜間模式下的color檔案 00857...

android 夜間模式

自7.0開始谷歌提供了夜間模式,用於將螢幕色彩調成較為柔和的琥珀色,但因該模式需要硬體的支援,所以不是所有裝置上都可用,也不常見。夜間模式的開啟和關閉,相關方法 的呼叫,可完全參考設定中的夜間模式,config中預設配置如下,從配置中可見,夜間模式是否能夠生效,主要依賴硬體 是否擁有hwc引入功能,...

Android實現夜間模式切換功能

除錯後進行下一步 colorprimary color colorprimary item colorprimarydark color colorprimarydark item coloraccent color coloraccent item style mainbackground for...