我在stackoverflow中看到了很多关于此消息的相关帖子,但它没有回答我的疑虑。
在manifest.xml中,我有:
<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="19" />
所以在帖子中,他们说因为我的minSdkVersion是9,我不能使用Theme.Holo.Light.DarkActionBar。
但这是无稽之谈,因为默认文件夹值-v14仅适用于API 14+用户......
那么为什么我会得到这个错误,我想维护我的android:minSdkVersion = 9.应该可以没有???
答案 0 :(得分:3)
我认为您在资源文件夹系统与支持您的应用的实际Android版本范围之间感到困惑。当您在android:minSdkVersion="9"
上声明AndroidManifest.xml
时,您声明您的应用应该能够在API 9 +上运行。
建立了Android资源结构,允许开发人员根据分辨率,屏幕大小和Android版本(以及其他内容)运行给定设备来使用不同的资源。您仍然需要尊重minSdkVersion
设置的内容;在你的情况下,它是9。Theme.Holo.Light.DarkActionBar
是在API 11上引入的,所以你不能使用那种风格,因为它不存在于API 9中。
举个例子,当Theme.Holo.Light.DarkActionBar
为9时尝试使用minSdkVersion
就像在ActionBar
为9时尝试获取minSdkVersion
的引用(假设您没有使用支持库)。直到后来的API,才添加这两个功能;他们不是Android的一部分,他们不存在。