minSdkVersion of 8无法使用某些必需字段进行编译

时间:2013-07-09 16:15:52

标签: android version stylesheet android-2.3-gingerbread

在我的Android应用程序中,我们需要支持从Gingerbread到Jelly Bean的所有内容。在我的样式表中,我需要有两个版本的某些字段,例如:

<item name="popupMenuStyle">@style/PopupMenu.MyTheme</item>
<item name="android:popupMenuStyle">@style/PopupMenu.MyTheme</item>

问题是,如果minSdkVersion为8,则字段的“android:”版本不会编译,但如果没有它们,则样式不会在后面的OS中应用。

我是否需要在XML文件中检查一个开关?

1 个答案:

答案 0 :(得分:0)

<uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />

针对targetSdkVersion(api 17)编译代码,它将解决问题。

<强>更新

您可以在/res中创建文件夹,例如valuesvalues-v11values-v14,您可以在其中添加与不同API级别相关的主题。在设备上&lt; API 11,主题将从&#39;值&#39;中选择,同样,设置api 11或更高版本的设备将获得来自&#39; values-v11&#39;的主题。等