2013-10-07 35 views
1

我想用Android的不同按钮样式取决于API级别

style="?android:attr/borderlessButtonStyle" 

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

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

回答

0

你有没有看“提供备用Resrouces”部分在本文?:

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

基本上你添加一个后缀(称为“预选赛”在链接的文章)“-v11”在特定的API级别(因此,您将拥有一个名为layout-v10layout-v9等的特殊文件夹,每个文件夹都在该文件夹中具有所需的布局文件)。我不知道是否有方法可以指定API级别的范围(即小于11,大于11)。这就是为什么提供不同大小的图标具有相同的名称:您会注意到在eclipse中创建的Android项目有drawable-ldpi,drawable-mdpi等,以及“catch-in”所有” drawable文件夹作为指定替代资源的一种手段。

1

borderlessButtonStyle是河洛主题,这是部分为什么它不提供以下API等级11

但是,您可以使用该主题的由早期的API级别将HoloEverywhere项目整合到您的应用程序中。

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