Java 使用daynight主题时如何更改版面的背景/文本颜色

Java 使用daynight主题时如何更改版面的背景/文本颜色,java,android,xml,android-layout,layout,Java,Android,Xml,Android Layout,Layout,我使用的是Theme.AppCompat.DayNight,我想自定义特定的布局背景和文本颜色,以根据白天还是夜间模式进行更改 以下是我迄今为止所做的尝试: <style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/primar

我使用的是Theme.AppCompat.DayNight,我想自定义特定的布局背景和文本颜色,以根据白天还是夜间模式进行更改

以下是我迄今为止所做的尝试:

<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/primaryDarkColorAmber</item>
    <item name="colorPrimaryDark">@color/primaryDarkColorAmber</item>
    <item name="colorControlActivated">@color/primaryDarkColorAmber</item>
</style>

<style name="PopUpTheme" parent="AppTheme">
    <!-- layout custom theme there's no darkBackground value...!! -->
    <item name="android:background">@color/popup_background</item>
</style>

@彩色/原色
@彩色/原色
@彩色/原色
@颜色/背景

首先创建res/values night此目录,然后添加与res/values相同的文件,您可以将其复制并替换为颜色,然后当您更改白天或夜间主题时,您可以根据自己的风格获得颜色

如果您遵循Android,则可以使用:

<View
...
android:background="?android:attr/colorBackground"
.../>

同样,对于文本,您可以使用android:attr/textColorPrimary,对于图标,也可以使用attr/colorControlNormal。这样,您就不需要创建单独的值文件


您可以找到更多详细信息。

请澄清您所说的“日间或夜间模式”是什么意思。你的意思是天黑了还是你的应用程序处于夜间模式?你可以使用以下链接:-