Android:如何更改操作栏背景颜色

Ash*_*awy 1 android

我使用Android Studio创建了一个项目,其中包含使用ListView和导航抽屉模板的活动,我的目标是API 14+,我正在测试Galaxy Note 3 Kitkat - 下面代码的结果是"Nothing"动作栏颜色是黑色(非常深灰色),不是我想要的蓝色.

在build.gradle文件中

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'}
Run Code Online (Sandbox Code Playgroud)

在AndroidManifest.xml中

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
Run Code Online (Sandbox Code Playgroud)

在Styles.xml(我有AppTheme)

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat">
    <item name="android:activatedBackgroundIndicator">@drawable/drawer_list_selector</item>
    <item name="android:actionBarStyle">@style/MyActionBar</item>
</style>

<!-- ActionBar styles -->
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">@drawable/blue_action_bar_color</item>
</style>
Run Code Online (Sandbox Code Playgroud)

在blue_action_bar_color.xml中

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="@color/action_bar"/>
</shape>
Run Code Online (Sandbox Code Playgroud)

在colors.xml中

<color name="action_bar">#3b5b98</color>
Run Code Online (Sandbox Code Playgroud)

那我在这里错过了什么?

EDIT1:

import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarActivity;
Run Code Online (Sandbox Code Playgroud)

EDIT2:

我不能用

<style name="AppTheme" parent="android:Theme.Holo.Light">
Run Code Online (Sandbox Code Playgroud)

当我的应用程序崩溃时出现错误消息

 Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
Run Code Online (Sandbox Code Playgroud)

The*_*uto 6

你要扩展的ActionBarActivityAppCompat包装和实现 Widget.Holo.Light.ActionBar风格.很明显你会得到那个错误.所以做一件事只是稍微更新你的风格如下:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimaryDark">@color/primaryDarkColorActionBar</item>
        <item name="colorPrimary">@color/primaryColorActionBar</item>
</style>
Run Code Online (Sandbox Code Playgroud)

此外,ActionBarActivity在最新的appcompat更新中已弃用,即22.1.1.所以更好地使用AppCompatActivity.