Android编程:解决异常“android.view.InflateException: Binary XML file line # : Error inflating class”
我一般都是在1和4 遇到,記錄一下.
今天寫程序發現一個問題,就是XML中報出Android.view.InflateException異常,可能的原因有:
1.XML中使用到得組件名稱是否書寫正確(包名+類名),可以使用crtl+鼠標點擊看能不能跳轉到該組件的定義的地方,可以的話就不是這個問題,如果不可以的話,就是這個問題
2.拋出異常時的main.xml與自定義View類相關代碼如下:就是自定義的組件中的構造方法有沒有書寫正確
main.xml
繼承View的類Chessboard.Java:
對于此異常,如下進行修改:添加View類的另一個構造方法
3.這個問題很是蛋疼,也是我遇到的問題,搞了我一天的時間,就是工程的編碼問題,場景是:從github上下載一個開源組件demo,導入到本地的Eclispe中,就是報錯,開始因為是上述的兩個問題,但是最后發現都不是,然后又以為是Eclipse版本或者是SDK,ADT這樣的版本的問題,耗費了我好長時間,最后想起來github上的這些開源都是老外們寫的東東,肯定用的是UTF-8編碼的,但是我本地Eclipse的編碼是GBK,所以我立馬改了一下編碼,終于解決了,所以在這里深深的體會到,在使用Eclipse導入工程的時候,還用注意編碼的問題,切記!
4.這個問題也是不難發現的,不會經常遇到,就是在多屏適配的時候,比如你在values-sw720文件夾中定義了dimens的一個尺寸,但是沒有在values中定義相應的尺寸大小,然后在xml中使用了這個dimens尺寸,當你運行程序到720p(三星平板)的設備上是沒有問題的,如果將程序跑在480的設備上,就會出現這種異常(原因是480設備可能會從values文件夾中查找尺寸,找不到出錯),這個問題很難發現。所以我們在做屏幕適配工作的時候,一定要謹慎。
總結
以上是生活随笔為你收集整理的Android编程:解决异常“android.view.InflateException: Binary XML file line # : Error inflating class”的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 港版苹果多少钱啊?
- 下一篇: Buttomsheetdialog的简单