Android 运行时异常:android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Er...

在AndroidStudio中编译没有问题,但是运行时会crash,常发生于自定义View的引用。出现问题的原因大致分为以下几种

1.引用View的路径问题:如果自定义的view为CustomerView,所在的文件夹路径为view,因此在XML布局文件中引用的时候必须是view.CustomerView全路径才可以,不然系统找不到该View。

2.构造函数问题:自定义一个View,必须实现基类view的三个构造函数

CustomView(Context context)

CustomView(Context context, @Nullable AttributeSet attrs)

CustomView(Context context, @Nullable AttributeSet attrs, int defStyleAttr)

从google官网上来看,后面两种构造函数在用XML引入View的方式中,必须重写。(原因不知道)

3.编译的中间文件没有清理干净:第三种就是你在原生系统代码的编译环境下编译APK之后,特别是修改了XML,出现标题所述现象,这个时候你只需要删除out目录下编译生成的中间文件夹即可(具体名字记不清了:在编译过程中,系统会将那个位置打印出来,通过串口来看吧,…/out/……/…./classes.dex,你循着这个路径往前推到你的应用的project名字那一层文件夹),删除再重新make就OK了。 

4.找不到资源文件:我原来在2.3的原生系统增加动态壁纸的时候,动态壁纸一跑起来就出这个异常,然后crash,当时就是因为找不到drawable的资源文件,于是当时我把drawable的hdpi或nodpi等文件夹的图片资源都拷贝一份到drawble下,问题解决(当时一直不明白系统会根据分辨率来选择加载不同drawable下文件夹的资源,为什么这里必须放入drawable中)。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 179,318评论 25 708
  • 自己的项目在5.0及以上的手机山一直运行正常,可是当运行在低版本手机上时在一个Inflater.inflater(...
    Eva_Gao阅读 15,998评论 2 1
  • 我不喜欢对于未来没有追求的人,都说人往高处走,水往低处流。在我原来认知的世界里,在一定的年龄之后,每个人都会自觉的...
    书格阅读 171评论 0 0
  • 致橡树 我如果爱你—— 绝不像攀援的凌霄花, 借你的高枝炫耀自己; 我如果爱你—— 绝不学痴情的鸟儿, 为绿荫重复...
    53bfa55cc619阅读 96评论 0 0
  • 距 离 文/笑看人生 冬夜的小雨淅淅沥沥 同在一城 可不知你在哪里 距离有多远 在问自己 你在干嘛 此刻是否把我...
    笑看人生_b68a阅读 251评论 0 1

友情链接更多精彩内容