我正在为用户选择两个主题中的主题。实际上我使用 AppTheme 作为应用默认主题。用户可以选择在两个主题之间切换 Light 和黑暗。当用户选择深色主题时,它应从默认主题 Apptheme 更改为 MyThemeDark 。
我的 style.xml 是
<style name="AppTheme" parent="AppTheme.Base"></style>
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">#009688</item>
</style>
<style name="MyThemeDark" parent="MyTheme.Dark"></style>
<style name="MyTheme.Dark" parent="Theme.AppCompat">
<item name="colorPrimary">#009688</item>
<item name="android:windowBackground">@color/Background</item>
<item name="android:colorBackground">@color/Background</item>
</style>
并在color.xml中
<color name="Background">#363F45</color>
在我的 AndroidManifest.xml
中<application
android:allowBackup="true"
android:icon="@drawable/logo"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
主题正在改变。但我的问题是在更改为 MyThemeDark 时,背景颜色不会变为深色而是保持白色。我该如何解决这个问题?
我想要像这张照片的主题
答案 0 :(得分:1)
您可以在XML文件中使用此命令,在布局标记内更改颜色就这么简单 例如,相对布局:
<Relativelayout
android:background="#000000"> </Relativelayout>
此外,您可以使用通常在res / values / colors.xml
中指定的简单颜色资源<color
name="red">#ffff0000</color>
或通过以下代码获取代码:
getResources().getColor(R.color.red)