0

我制作了两个styles.xml:s,一个在values 中,一个在values-v11 中。

/res/values/styles.xml

    <resources>
    <style name="appTheme" parent="@android:style/Theme.Light"> </style>   
    </resources>

/res/values-v11/styles.xml

    <resources>
    <style name="appTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
    </style>
    <style name="MyActionBar" parent="android:Theme.Holo.Light.DarkActionBar">
    <item name="android:background">#3b5998</item>        
    </style>
    </resources>

AndroidManifesr.xml

    <uses-sdk
    android:minSdkVersion="7"
    android:targetSdkVersion="16" />

    <application
    android:allowBackup="true"
    android:icon="@drawable/pic"
    android:label="@string/app_name"
    android:theme="@style/appTheme"
     >

当我在 android 4.2 设备上运行这个程序时,操作栏消失了,所以我的猜测是 4.2 设备也会去 /res/values/styles.xml 来获取它的样式。那么我做错了什么?

编辑!我发现了问题,在 /res/values-v11/styles.xmlparent="android:Theme.Holo.Light.DarkActionBar"中的“MyActionBar”样式应该是parent="@android:style/Widget.Holo.ActionBar"parent="@android:style/Widget.Holo.Light.ActionBar"

4

1 回答 1

0

您已将您的设置android:targetSdkVersion16,即 Android 4.1 Jellybean。

Android 4.2 是版本17,因此请尝试将您的 uses-sdk 更改为:

<uses-sdk
    android:minSdkVersion="7"
    android:targetSdkVersion="17" />
于 2013-07-11T12:52:01.860 回答