自定义状态栏

时间:2017-10-18 02:18:10

标签: android xml android-layout

我正在尝试更改StatusBar的颜色,当我尝试更改colorPrimaryDark(第一个栏,保持batery,tima,date等等)时,颜色不会改变。

我用我使用的颜色值

创建了一个xml

colors.xml

<?xml version="1.0" encoding="utf-8"?>
  <resources>
    <color name = "primary">#162d50</color>
    <color name = "primary_dark">#010101</color>
    <color name = "textprimary">#FFFFFF</color>
  </resources>

我的styles.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <style name="AppTheme" parent="android:Theme.Material.Light">
   <item name="android:colorPrimary">@color/primary</item>
   <item name="android:colorPrimaryDark">@color/primary_dark</item>
   <item name="android:textColorPrimary">@color/textprimary</item>
  </style>
</resources>

换句话说,我可以更改背景,标题栏,文字的颜色,但是当我尝试更改colorPrimaryDark时,无论输入的值是什么,颜色都不会改变,有人可以帮助我吗?

4 个答案:

答案 0 :(得分:1)

将您的主题更改为此。

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

答案 1 :(得分:0)

删除android代码并重试。

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <style name="AppTheme" parent="android:Theme.Material.Light">
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>
    <item name="textColorPrimary">@color/textprimary</item>
  </style>
</resources>

答案 2 :(得分:0)

有多种方法可以更改状态栏的颜色。以下是我的解决方案。

  1. 编辑style.xml,如下所示。您可以直接将android:statusBarColor标记添加到您的xml。
  2. <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:statusBarColor">#d9591b</item>
    </style>
    

    注意 - :android:statusBarColor在minsdk版本21中可用。它不能在api级别21下工作。您需要修改gradle文件。将minSdkVersion更改为21。

答案 3 :(得分:0)

编辑Style.Xml并在资源标记中添加:

 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colortoolbar</item>
    <item name="colorPrimaryDark">@color/colortoolbar</item>
    <item name="colorAccent">@color/colortoolbar</item>

</style>

我的colors.xml中已经定义了colortoolbar。您可以定义自己的颜色。