Android AppCompat 需要 API 级别 11

我有为猴使用 AppCompat 支持库的应用程序。现在我试图用一些样式创建一个新的 themes.xml 文件,为此目的。

<!-- Application theme. -->
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
    <item name="actionBarStyle">@style/MyActionBar</item>
</style>

所以同样的方式做在这里: http://developer.android.com/guide/topics/ui/actionbar.html#StyleExample然而,Eclipse 在这里引发一个错误,说:

android:actionBarStyle requires API level 11 (current min is 8) themes.xml

这怎么能因为我使用的支持库?

解决方法 1:

添加下面的 styles.xmlres/values14

<style name="Theme.Styled" parent="@style/Theme.AppCompat.Light">
    <!-- Setting values in the android namespace affects API levels 14+ -->
    <item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>

</style>

<style name="Widget.Styled.ActionBar" parent="@style/Widget.AppCompat.Light.ActionBar">
    <!-- Setting values in the android namespace affects API levels 14+ -->
    <item name="android:background">#FFFFFF</item>

</style>

你会然后需要添加到值文件夹中的以下内容:res/values/styles.xml

<style name="Theme.Styled" parent="@style/Theme.AppCompat.Light">
    <!-- Setting values in the default namespace affects API levels 7-13 -->
    <item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
</style>

<style name="Widget.Styled.ActionBar" parent="@style/Widget.AppCompat.Light.ActionBar">
    <!-- Setting values in the default namespace affects API levels 7-13 -->
    <item name="background">#FFFFFF</item>
</style>

更多详细信息

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

注意到为 14 的变化

 <item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>

到 7-13

 <item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。