有没有办法在drawable.xml文件中定位某些Api?

时间:2019-01-03 08:36:37

标签: android api drawable

我使用涟漪创建了一个自定义可绘制对象,该对象仅针对api 21及更高版本,我知道可以通过编程方式来实现,但是有没有办法在可绘制对象本身中做到这一点?

我还尝试为更高的api制作一个单独的文件夹,听说可以使用布局完成,但是没有运气,谢谢。

3 个答案:

答案 0 :(得分:1)

您可以为不同的API版本创建多个资源,并让Android根据设备的API版本选择其中之一。创建一个新的drawable.xml文件,但选择API 21版作为限定符,然后在上面放置代码。创建另一个没有版本限定符的drawable.xml,并放置另一个在21版之前的代码。

答案 1 :(得分:0)

听起来您已经尝试过了,但这应该可行。在您的res文件夹中创建一个drawable-v21。这应该以API 21及更高版本为目标(或者,如果您还有另一个更高API的drawable文件夹,即drawable-v24,则21的目标是21到23)。将该级别的可绘制对象放置在此新目录中

答案 2 :(得分:0)

您可以像这样使用sth:

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP)

,然后显示您的可绘制对象。