android.view.InflateException Error inflating class

bug 描述:

android.view.InflateException: Binary XML file line #xxx: Error inflating class com.xxx.xxxview


問題:

<item name="android:paddingEnd">10dp</item>
此屬性是api17(4.2)纔有,所以在4.1上回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.編譯的中間文件沒有清理乾淨:。

    4.找不到資源文件:。

    5.XML語法有隱蔽錯誤
e.g. android:textSize="@style/Text.Mediumn"
這樣的錯誤、編譯時是並不會報錯的,竟然會變成動態執行時錯誤

    6.包衝突,或包名未導入等。






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章