【问题标题】:Can't reference Holo theme from values-v11/themes.xml无法从 values-v11/themes.xml 引用 Holo 主题
【发布时间】:2012-08-30 04:13:11
【问题描述】:

如果我的应用在 3.0+ 设备上运行,我正在尝试让应用使用 Holo Light 主题,但由于某种原因,values-v11 方法不起作用。我看到很多其他人显然在使用这种方法,但是当我在 res/values-v11/themes.xml 中定义我的主题时:

<resources>
<style name="MainStyle" parent="@android:Theme.Holo.Light">

</style>
</resources>

Eclipse 给我error: Error retrieving parent for item: No resource found that matches the given name '@android:Theme.Holo.Light'. 无论我使用android:Theme.Holo.Light 还是android:style/Theme.Holo.Light 都是一样的。

我的 minSdkVersion 设置为 10,我的 targetSdkVersion 设置为 15。

有什么想法吗?

【问题讨论】:

    标签: android xml themes


    【解决方案1】:

    我怀疑你应该使用parent="@android:style/Theme.Holo.Light"。确保它完全像这样 - 带有 @ 符号和所有内容。

    来自 cmets:还要确保您已在项目属性(而非清单)中将目标 API(不同于目标 SDK)设置为至少 4.0/API 14。

    【讨论】:

    • 使用 parent="@android:style/Theme.Holo.Light" 给我同样的信息。
    • 你清理过你的项目了吗?你的清单是什么样的?你在用MainStyle吗?
    • 我注释掉了麻烦的行并清理了我的项目,但它仍然没有工作。对于我的一项活动,android:theme 设置为@style/MainStyle,但这似乎不是问题。问题似乎出在values-v11/themes.xml。如果您想查看我的清单,可以在这里查看:dl.dropbox.com/u/53423033/AndroidManifest.xml
    • 您的构建目标是否在项目属性中设置为 14+? (不是清单。)
    • 不,不是。 :) 它被设置为 2.3.3,因为我认为它不能在 4.0 之前的任何东西上运行,但我测试了它(在 2.3.3 设备上),我错了!耶!我想只要将 minSdkVersion 设置为允许 2.3.3,它就可以工作。哦,好吧,新手错误。非常感谢!
    【解决方案2】:

    将您的项目构建目标设置为高于或等于 14,并确保您为 Theme.Holo.Light 使用了正确的语法。 应该是这样的 parent="@android:style/Theme.Holo.Light"

    【讨论】:

      【解决方案3】:

      TextAppearance.Holo.Widget.ActionBar.Title 似乎已添加到 API 级别 13。确保您的构建目标设置为 13,而不仅仅是 11。

      AndroidManifest.xml:

      <uses-sdk
          android:minSdkVersion=...
          android:targetSdkVersion="11" />
      

      【讨论】:

        猜你喜欢
        • 2012-08-26
        • 1970-01-01
        • 2012-09-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-22
        相关资源
        最近更新 更多