Android异常:android.view.InflateException: Binary XML file line #14: Error inflating class
2015-08-19 13:52
666 查看
总体原因如下:
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,出现标题所述现象,删除bin目录,Clean重新生成下项目APK
4.找不到资源文件:我原来在2.3的原生系统增加动态壁纸的时候,动态壁纸一跑起来就出这个异常,然后crash,当时就是因为找不到drawable的资源文件,于是当时我把drawable的hdpi或nodpi等文件夹的图片资源都拷贝一份到drawble下,问题解决(当时一直不明白系统会根据分辨率来选择加载不同drawable下文件夹的资源,为什么这里必须放入drawable中)。
总结来看,就是xml中【控件属性】和【控件的类】(一般是自定定义的控件)你出了问题
我犯了错误是:
是把<View>写成了<view>,导致了程序出错
还有出现这个错误另外一个的博客
把<TextView style="@style/xxx">
写成了:<TextView android:style="@style/xxx">
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,出现标题所述现象,删除bin目录,Clean重新生成下项目APK
4.找不到资源文件:我原来在2.3的原生系统增加动态壁纸的时候,动态壁纸一跑起来就出这个异常,然后crash,当时就是因为找不到drawable的资源文件,于是当时我把drawable的hdpi或nodpi等文件夹的图片资源都拷贝一份到drawble下,问题解决(当时一直不明白系统会根据分辨率来选择加载不同drawable下文件夹的资源,为什么这里必须放入drawable中)。
总结来看,就是xml中【控件属性】和【控件的类】(一般是自定定义的控件)你出了问题
我犯了错误是:
是把<View>写成了<view>,导致了程序出错
还有出现这个错误另外一个的博客
把<TextView style="@style/xxx">
写成了:<TextView android:style="@style/xxx">
相关文章推荐
- android开发 图片合成
- Android项目之随手涂鸦
- Android闪闪发光字体效果
- android中java的知识(一)
- Android 列表按照时间排序
- Android移动非编开发过程--NDK、OPENGL ES开发中的一些常见错误及解决办法
- Android 线程 thread 两种实现方法
- Android doGet方法
- android自定义Seekbar你还将你的拖动数值显示在旁边固定的TextView上么?
- android自定义Seekbar你还将你的拖动数值显示在旁边固定的TextView上么?
- Android Api Demos登顶之路(三十七)Fragment-->Dialog
- 《疯狂Android讲义》第二版目录
- 关于Android:lineSpacingExtra属性在Android5.0与之前版本存在的区别
- Android adb.exe连接不上问题解决
- Android笔记:管理所有活动
- Android应用程序基础(二)
- Android三种播放视频的方式
- android 自定义字体
- Android中访问资源的几种方式总结
- Android中将布局文件/View添加至窗口过程分析 ---- 从setContentView()谈起