Android實現夜間模式切換功能

2021-10-13 05:34:19 字數 2699 閱讀 8733

除錯後進行下一步

"colorprimary"

>

@color

/colorprimary<

/item>

"colorprimarydark"

>

@color

/colorprimarydark<

/item>

"coloraccent"

>

@color

/coloraccent<

/item>

<

/style>

"mainbackground" format=

"color|reference"

>

<

/attr>

<

/resources>

values-night檔案中的**是在values檔案的基礎上修改的,在下方進行對比

values中的colors.xml

<

?xml version=

"1.0" encoding=

"utf-8"

?>

<

!-- day values colors.xml --

>

"colorprimary"

>#009688

<

/color>

"colorprimarydark"

>#00796b<

/color>

"coloraccent"

>#009688

<

/color>

"textcolorprimary"

>#616161

<

/color>

"viewbackground"

>

@android

:color/white<

/color>

"colordaynightchange"

>

@android

:color/holo_orange_dark<

/color>

<

/resources>

values-night中的colors.xml

<

?xml version=

"1.0" encoding=

"utf-8"

?>

<

!-- night values colors.xml --

>

"colorprimary"

>#35464e<

/color>

"colorprimarydark"

>#212a2f<

/color>

"coloraccent"

>#212a2f<

/color>

"textcolorprimary"

>#616161

<

/color>

"viewbackground"

>#212a2f<

/color>

"colordaynightchange"

>

@android

:color/holo_blue_dark<

/color>

<

/resources>

values中的strings.xml

>daynight<

/string>

"day_night_label"

>日間模式<

/string>

<

/resources>

values-night中的strings.xml

>daynight<

/string>

"day_night_label"

>夜間模式<

/string>

<

/resources>

public

class

mainactivity

extends

else

if(mode == configuration.ui_mode_night_no)

recreate()

;}});}}

其中,在新增

時可能會遇到報紅或無法找到的問題,可以用下方的**替代

在多個地方都會遇到

public

class

extends

}這裡的 mode 有四種型別可以選擇:

mode_night_no: 使用亮色(light)主題,不使用夜間模式;

mode_night_yes:使用暗色(dark)主題,使用夜間模式;

mode_night_auto:根據當前時間自動切換 亮色(light)/暗色(dark)主題;

mode_night_follow_system(預設選項):設定為跟隨系統,通常為 mode_night_no

android夜間模式實現

我們來 一下夜間模式。問 android夜間模式的實現有幾種?答 有好多種。怎麼用這個方法呢?接下來怎麼去自定義自己的日夜間模式呢?方法與之前的nightmodehelper類似,建立帶 night字尾的資料夾 比如 values night 然後新增你的資源檔案,資源檔案需要相同的命名 比如 co...

Android 夜間模式主題風格切換

settings 模組 name night display title msgid 2626451512200357686 夜間模式 string name night display text msgid 1837277457033025056 夜間模式會將您的螢幕色調調節為琥珀色,讓您在光線昏...

切換夜間模式

先需要新建乙個專案,選擇初始的activity時選擇baseactivity。dependencies修改style name colorprimary color colorprimary colorprimarydark color colorprimarydark coloraccent co...