【问题标题】:Android Studio Action Bar Color not ChangingAndroid Studio 操作栏颜色不变
【发布时间】:2015-04-27 12:06:12
【问题描述】:

在运行 Android 5.0 棒棒糖的 styles.xml 中

<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="android:colorPrimary">@color/primary</item>
    <item name="android:colorPrimaryDark">@color/primary_dark</item>
    <item name="android:colorAccent">@color/accent</item>
    <item name="android:statusBarColor">@color/primary</item>
    <item name="android:colorAccent">@color/accent</item>
    <item name="android:textColorPrimary">@color/primary_text</item>
    <item name="android:textColor">@color/secondary_text</item>
    <item name="android:navigationBarColor">@color/primary_dark</item>
</style>

当我构建并运行它时,我只会让状态栏用 colorPrimaryDark 着色,而工具栏保持黑色。如何让它变成 colorPrimary?

这是我目前得到的

https://www.dropbox.com/s/alp8d2fhzfd5g71/Screenshot_2015-02-25-21-13-01.png?dl=0

【问题讨论】:

    标签: android xml android-studio android-5.0-lollipop


    【解决方案1】:

    更新:

    在您的布局文件夹中创建一个名为 tool_bar.xml 的新文件并粘贴以下代码:

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.v7.widget.Toolbar
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:background="@color/ColorPrimary"
        android:elevation="2dp"
        android:theme="@style/Base.ThemeOverlay.AppCompat.Dark"
        xmlns:android="http://schemas.android.com/apk/res/android" />
    

    在您的 color.xml 文件中添加这些颜色:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    
        <color name="ColorPrimary">#00897B</color>
        <color name="ColorPrimaryDark">#00695C</color>
    
    </resources>
    

    这是您的 styles.xml 文件的代码:

    <resources>
    
       <!-- Base application theme. -->
       <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
           <item name="colorPrimary">@color/ColorPrimary</item>
           <item name="colorPrimaryDark">@color/ColorPrimaryDark</item>
       </style>
    

    您应该将以下代码添加到您的 MainActivity.xml 文件中:

    <include
        android:id="@+id/tool_bar"
        layout="@layout/tool_bar"
        android:layout_height="wrap_content"
        android:layout_width="match_parent" />
    

    这种方法对我有用!

    这应该会为您提供类似于结果下方的操作栏

    【讨论】:

    • 您好,但我收到“您必须使用 Appcompat 主题”错误
    • 你在 values-21 文件夹中有另一个 styles.xml 文件吗?
    • 操作栏消失了
    • @user2253899 您是否将工具栏添加到您的 activity_main.xml 文件中?
    • 我意识到我的错误。我的其他 UI 元素阻止了它。谢谢
    【解决方案2】:

    如果你想改变 Android 应用的操作栏颜色。只要照顾好这三个文件

    color.xml (定义操作栏颜色)

    <color name="colorPrimary">#4613AC</color>
    <color name="colorPrimaryDark">#4613AC</color>
    

    style.xml (定义action bar的风格)

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

    Manifext.xml (将操作栏应用到应用程序)

     <application
        android:allowBackup="true"
        android:icon="@drawable/logo"
        android:label="BarCode Scanner Generator"
        android:largeHeap="true"
        android:theme="@style/AppTheme" >  //This Line apply AppTheme to your app
    

    【讨论】:

      【解决方案3】:

      在 style.xml 中设置 @color/carribean。这将使您的整个屏幕设置为加勒比色 - 包括操作栏。 然后在每个活动 xml 集中 - android:background="@color/white"。这会将活动保持操作栏颜色的背景更改为加勒比色。

      【讨论】:

        【解决方案4】:

        您应该创建一个如上所示的 tool_bar.xml 并复制该代码。由于您的应用程序面向 API 21,因此您应该有两个 xml 文件,其中一个是 tool_bar.xml(v21)。无论您在 (v21) xml 中使用什么代码,都决定了您的 Lollipop 设备上将显示什么。其他 xml 中的任何代码都决定了旧设备上将显示什么

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-12-16
          相关资源
          最近更新 更多