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



在我的android应用程序中,我们需要支持从姜饼到果冻豆的一切。在我的样式表中,我需要有一些字段的2个版本,例如:

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

问题是,在minSdkVersion为8的情况下,字段的"android:"版本不会编译,但如果没有它们,样式就无法在以后的操作系统中应用。

我必须在XML文件中检查开关吗?

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

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

更新

您可以在/res中创建文件夹,如valuesvalues-v11values-v14,在那里您可以添加与不同api级别相关的主题。在设备<API 11,主题将从"值"中选择,类似地,使用API 11或更高版本的设备将从"values-v11"等中获取主题

最新更新