在使用DataBinding中遇到的一個奇葩的 java.lang.NullPointerException問題

參考文章

1、官方文章,使用chrome的翻譯功能閱讀還是比較流暢的
2、國內翻譯

按照官方文章第一步,

android {
    **
    dataBinding { enabled = true }
}

這幾行代碼剛寫完,build的時候就報了空指針異常,這時使用控制檯指令

gradlew.bat assembleDebug --stacktrace

執行完以後發現是解析layout文件的時候出現的異常
這時再去項目路徑中查找

bulid

intermediates

data-binding-layout-out

找到其子文件夾中的layout文件夾,查看讀取到哪個文件時出錯
但是這時我檢查該文件並沒有什麼異常,我一開始以爲是我引用的
Android-PullToRefresh庫不在維護了,因此不支持databinding,所以我就把該庫替換爲android-Ultra-Pull-To-Refresh,說實話,新的庫比原來的庫好用很多,兼容性也更好,而且作者還在維護

當我使用新庫,改完佈局以後發現問題還是沒解決

因此我新建了一個項目,使用了databinding,沒問題
我把該佈局拷過去,項目報錯,這時我開始一行一行刪代碼,編譯程序
結果刪到了最後問題還是沒解決,頓時我就懵逼了

最後,也是偶然想起來一個方法,是不是文件編碼的問題;
我就新建了一個佈局文件,把代碼拷進去,編輯;竟然沒錯了

問題就這樣解決了,然後我把原項目出問題的佈局都找出來,改了改
End

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