Android drawable-v21文件夹下xml文件,手机版本不兼容

Posted 胡育诚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android drawable-v21文件夹下xml文件,手机版本不兼容相关的知识,希望对你有一定的参考价值。

1 问题描述


我在ImageView中引用了矢量图形@drawable/shape_quote_round,然后矢量图形是放在了

drawable-v21中


运行时报错,类似

FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity ComponentInfo
android.view.InflateException: Binary XML file line #46: Error inflating class Button
Caused by: android.content.res.Resources$NotFoundException: 
**File res/drawable/btn_primary.xml from drawable resource ID #0x7f020058**


2 问题分析

在开发中遇到这个问题,把xml文件放在drawable-v21文件夹下,在Android版本API 22中,可以正常运行,但是在API19中则报出xml布局文件错误的问题,经过一番排查,才知道是手机版本兼容问题,drawable-v21文件夹是v7包用于存放xml文件,但是在API 21以上才可使用,否则会报出xml布局文件的错误,要在API 21以下使用drawable中的xml文件,还是要把 其放在drawable中

以上是关于Android drawable-v21文件夹下xml文件,手机版本不兼容的主要内容,如果未能解决你的问题,请参考以下文章

android.content.res.Resources$NotFoundException:文件 res/drawable-v21/launch_background.xml

较新版本的 Android Studio 和只有两个可绘制目录 - drawable 和 drawable-v21

Android5.0新特性之——动画效果1涟漪效果

如果Android版本在“X”下如何隐藏ImageButton?

Android21.4 图片动画缩放示例

Android View事件机制 21问21答