android异常“android.view.InflateException: Binary XML file line # : Error inflating class”

今天用到viewPager写了个小demo测试FragmentStatePagerAdapter和FragmentPagerAdapter的区别,忽然报出了“android.view.InflateException: Binary XML file line # : Error inflating class”错误,一时不知道如何下手,网上搜的解决法案都没办法行得通,最后不经意间调通了,现将解决法案说下:

1.看下ViewPager包名是否写全了,如果没有可能出现上面的错误。

2.如果是从网上下载下来的项目添加到工程中出现以上错误,在工程上右键选properties->android->library中删掉所要添加的库文件如:appcompat_v7,然后重新运行。如果可以运行之后再将这个库给添加进去,具体原因不是很清楚。

以上是我的解决方法,我在网上也看到不少其他原因引起的,现在总结下,以后出现类似情况可以直接处理了:

1.自定义类引用为题:如写一个自定义view,引用的时候需要用完整路径。

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.找不到资源文件系统会根据分辨率来选择加载不同drawable下文件夹的资源,如果只在一个文件下放了资源文件,不同的分辨率设备的会报错。

4.编码问题:从github上下载一个开源组件demo导入到本地的Eclispe中,有可能出现这个错误,下载下来的有可能是UTF-8编码,而本地eclipse有可能是gbk编码。

5.内存泄漏:内存泄漏也有可能引起这个情况。


参考:http://blog.csdn.net/huangxiaohu_coder/article/details/8497286

      http://www.tuicool.com/articles/J3ea6v

          http://blog.csdn.net/jiangwei0910410003/article/details/17039207


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值