更改android操作栏的背景颜色,基础教程

时间:2013-11-14 18:53:04

标签: android colors android-actionbar

我正在尝试在Android教程(here)之后更改由Eclipse向导制作的新Android应用程序的ActionBar颜色,但我遇到了一些问题。

我将minSdkVersion设置为10(它应该是android 2.1左右)。

当我将此代码粘贴到themes.xml时(如教程所述):

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- the theme applied to the application or activity -->
    <style name="CustomActionBarTheme"
           parent="@style/AppTheme">
        <item name="android:actionBarStyle">@style/MyActionBar</item>

        <!-- Support library compatibility -->
        <item name="actionBarStyle">@style/MyActionBar</item>
    </style>

    <!-- ActionBar styles -->
    <style name="MyActionBar"
           parent="@style/AppTheme">
        <item name="android:background">#FFFFFF</item>

        <!-- Support library compatibility -->
        <item name="background">#FFFFFF</item>
    </style>
</resources>

Eclipse向我提供了这些错误:

  • 第5行:android:actionBarStyle需要API级别11(当前min为 10)
  • 第8行:错误:错误:找不到与给定匹配的资源 name:attr'actionBarStyle'。
  • 第16行:错误:错误:找不到资源 与给定名称匹配:attr'background'。

我修改了一些小东西(基本主题和颜色),但是干净的代码在教程中。

我的Styles.xml在这里:     

    <!--
        Base application theme, dependent on API level. This theme is replaced
        by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
    -->
    <style name="AppBaseTheme" parent="android:Theme.Light">
        <!--
            Theme customizations available in newer API levels can go in
            res/values-vXX/styles.xml, while customizations related to
            backward-compatibility can go here.
        -->
    </style>

    <!-- Application theme. -->
    <style name="AppTheme" parent="AppBaseTheme">
        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    </style>

</resources>

有什么问题?

1 个答案:

答案 0 :(得分:5)

要使用api level 11下面的操作栏,您需要在项目中引用app compact(来自支持库)。

您的课程需要延长ActionBarActivity,您需要使用Theme.AppCompat

http://developer.android.com/guide/topics/ui/actionbar.html

同时检查此

http://android-developers.blogspot.in/2013/08/actionbarcompat-and-io-2013-app-source.html

或者您需要使用ActionBarSherlock

http://actionbarsherlock.com/