在android中创建一个黑暗的背景主题

时间:2015-09-12 21:27:32

标签: android

我正在为用户选择两个主题中的主题。实际上我使用 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 时,背景颜色不会变为深色而是保持白色。我该如何解决这个问题?

我想要像这张照片的主题

https://goo.gl/photos/F95fm7NQWCGGNa9g6

1 个答案:

答案 0 :(得分:1)

您可以在XML文件中使用此命令,在布局标记内更改颜色就这么简单 例如,相对布局:

<Relativelayout
android:background="#000000"> </Relativelayout>

此外,您可以使用通常在res / values / colors.xml

中指定的简单颜色资源
<color
name="red">#ffff0000</color>

或通过以下代码获取代码:

getResources().getColor(R.color.red)