1

我想使用

style="?android:attr/borderlessButtonStyle"

我的按钮。这需要分钟。API 级别 11。我希望我的应用程序最低 API 级别 9。所以我在默认布局文件夹中使用了样式标签,并使用与中相同的 xml 文件创建文件夹 res/layout-v9 和 res/layout-v10默认布局文件夹 - 除了样式标签。我仍然得到布局文件夹中 xml 文件的最低 API 级别 11 错误。

如何避免错误并将样式标签应用于 API 级别 >= 11 但不适用于 API 级别 < 11?

4

2 回答 2

1

borderlessButtonStyle是 Holo 主题的一部分,这就是为什么它在 API 级别 11 以下不可用的原因。

但是,您可以通过将HoloEverywhere项目合并到您的应用程序中,在较早的 API 级别上使用该主题。

如果这不是您想要做的,您需要在您的可绘制文件夹中创建一个自定义选择器,并将其用于按钮样式。

于 2013-10-07T22:01:52.993 回答
0

您是否查看过本文中的“提供替代资源”部分?:

http://developer.android.com/guide/topics/resources/providing-resources.html

基本上,您为特定的 API 级别添加一个后缀(在链接的文章中称为“限定符”)“-v11”(因此您将有一个名为layout-v10,layout-v9等的特殊文件夹,每个文件夹中都有所需的布局文件)。不过,我不确定是否有办法指定 API 级别的范围(即小于 11 与大于 11)。

顺便说一句:这就是提供具有相同名称的不同大小图标的实际情况:您会注意到在 eclipse 中创建的 Android 项目具有drawable-ldpi,drawable-mdpi等,以及“catch-all”drawable文件夹作为一种手段用于指定替代资源。

于 2013-10-07T21:58:20.633 回答