MaterialButton 在Android 5.1 使用vector drawable 报错Error inflating class com.google

288 阅读1分钟

起因

今天在项目中使用了 MaterialButton 控件 ,使用了

<style name="Theme.NurseStation" parent="Theme.MaterialComponents.Light.NoActionBar">

开始在7.的系统上跑没有问题,晚上回家在雷点模拟器5.1系统上面就报错 Error inflating class

image.png

过程

由于项目使用的databinding 开始报错不是明显,只是报错提示说xml 文件有问题,经过排查发现是MaterialButton 导致的,我运行了另一个使用了MaterialButton 的项目是没有问题了,对比发现,看下图

image.png

!

注意这行

app:icon="@drawable/ic_launcher_foreground"

由于UI还没有给图,我先使用了@drawable/ic_launcher_foreground占个位子,这个是android studio 自动添加的一个vector 图,在7.1系统上跑没毛病,5.1系统上不行。

可能是因为低版本系统对vector的支持不是很好,具体为什么不行还不清楚,后面有空了在研究一下