文档章节

[积累]Android运行时异常“Binary XML file line # : Error in

SuShine
 SuShine
发布于 2015/06/19 17:40
字数 587
阅读 36
收藏 0

码上生花,ECharts 作品展示赛正式启动!>>>

在原生Android下编译APK,编译没有问题,但是在运行的时候经常出现如标题所描述的异常,然后整个程序Crash掉......

    我遇到该问题常常都是因为修改了资源文件所引起,大致有以下几种方式来解决:

    1. 引用类名问题:自定义了一个View,将他用于布局文件中,假设他的包名叫MyPackage,类名叫MyTestView,这个时候你在XML作为布局元素来布局的话,必须使用完整路径名,也就是包名加类名来引用,用MyPackage.MyTestView来进行引用。

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

    View(Context context)     //Simple constructor to use when creating a view from code

    View(Context context, AttributeSet attrs)     //Constructor that is called when inflating a view from XML

    View(Context context, AttributeSet attrs, int defStyle)     //Perform inflation from XML and apply a class-specific base style

    从文档上的介绍来看,第二个和第三个构造函数对于XML这种引用方式是必须实现的,这三个构造函数应该是在不同的应用场合来实例化一个View对象。

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

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

 

本文转载自网络

SuShine
粉丝 132
博文 630
码字总数 160326
作品 0
朝阳
后端工程师
私信 提问
加载中
请先登录后再评论。
Android InflateException: Binary XML file line #18

业务变动所迫,最近开始研究Android要在很短时间内做一个应用出来。 今天在玩PopupWindow的时候,需要在页面上填充一个layout,但是在运行时出现程序强行退出的问题。 一查日志,发现了这个异...

osc_dk3cdlqm
2018/06/19
2
0
android中出现android.view.InflateException

在点击按钮从一个activity调整到另一个activity时,出现了 android.view.InflateException: Binary XML file line #48: Error inflating class java.lang.reflect.Constructor这个异常,但有......

ydww
2012/03/09
2K
2
android 多界面 OOM

android 大约40多个界面。 activity 使用的是singleinstance,每个界面都有自己的背景图片,图片大小大约100K小于400K,当界面来回的切换的时候,10分钟之内一定会oom. 信息如下:Out of memo...

金玉
2013/11/21
672
7
Android setContentView 的时候包空指针异常

Android setContentView 的时候包空指针异常。 代码: 异常: 04-22 04:08:25.434 26417-26417/com.jeanselam.activities E/AndroidRuntime: FATAL EXCEPTION: main Process: com.jeanselam......

蜡笔小小小新
2016/04/22
840
1
android 使用FloatActionButton(FAB)悬浮按钮问题

我今天在android系统上使用fab 按钮,遇到了以往没有遇到的问题,因为以前不做什么修改直接就用了,这次修改了一下背景颜色,出问题了 <android.support.design.widget.FloatingActionButto...

雨焰
2018/09/07
181
0

没有更多内容

加载失败,请刷新页面

加载更多

【MySQL】恢复从库时,主库的Binlog接续补上的解决方案

情景 从库从主库的一天前的备份恢复后,出现了如下错误: SITION = 1, but the master has purged binary logs containing GTIDs that the slave requires 该实例的每秒事务在大概4K左右,所以...

osc_77kn21rn
10分钟前
12
0
智能网约车车载终端,安全出行解决方案-飞凌A40i核心板来实现

自从共享经济模式崛起开始,网约车 和出租车 已经成为了最为普及的共享出行方式 ,然而在为民众带来极大便利的同时,也存在着各种问题。 关于网约车的服务态度、安全等问题频频引发各种质疑 ...

osc_vvylzpqs
12分钟前
12
0
Linux命令行与shell脚本编程大全第三版 学习笔记

1. 初识Linux shell 1.1, Linux分为四个部分: Linux内核,GNU工具集,图形化桌面环境,应用软件 1.1.1, Linux内核主要负责四种功能:系统内存管理,软件程序管理,硬件设备管理,文件系统管...

osc_9yulefcq
13分钟前
10
0
@Component默认是单例还是多例?

@Component默认是单例还是多例? 答: @Component注解默认实例化的对象是单例,如果想声明成多例对象可以使用@Scope("prototype") @Repository默认单例 @Service默认单例 @Controller默认多例...

osc_uu6euvkf
14分钟前
18
0
JetBrains系列IntelliJ IDEA、GoLand等 2020.1.2最新破解激活方法(没有下载链接)

jetbrains-agent from:Neo Peng ,感谢作者的分享 一、下载jetbrains agent 抱歉,暂时不提供连接了,大伙自己找链接吧,建议关注上面提的公号 二、IDE激活方式1 1.先选择试用 2.打开IDE,H...

osc_z9jr2tjo
15分钟前
20
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部