作者just3345678 (阿家)
看板AndroidDev
標題[問題] listview滑動會跳出程式
時間Tue Jun 7 18:00:16 2016
就是我在寫Listview時
list項目長度比螢幕還多
所以需要滑動螢幕來看到其他list
但滑動的時候就會出現錯誤停止程式
錯誤的訊息是這樣
Exception dispatching input event
目前卡這個問題卡好久了
覺得應該是出在adapter的問題
附上部分程式碼
http://pastebin.com/KyLm6qPU
必須要求救了!!
錯誤的地方是這樣的
PID: 6715
java.lang.NullPointerException: Attempt to invoke virtual method 'void
android.widget.TextView.setText(int)' on a null object reference at
.adapter.OptionListAdapter
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.248.81.73
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1465293619.A.91A.html
1F:推 cooper6334: 錯誤訊息你要找cause by 某某exception 然後噴在哪行 06/07 18:06
2F:→ just3345678: E/InputEventReceiver: Exception dispatching input 06/07 18:36
※ 編輯: just3345678 (60.248.81.73), 06/07/2016 18:41:00
3F:→ cooper6334: 再往下找會告訴你噴在哪行吧 找你自己的package name 06/07 22:48
4F:→ cooper6334: 看來就是你某個textview沒拿到,call setText就噴了 06/07 22:49
5F:→ ssccg: 你的adapter裡面有兩種layout,一種是textview+imageview 06/08 00:52
6F:→ ssccg: 一種是textview+textview,getView時如果是產生新的沒差 06/08 00:53
7F:→ ssccg: 但如果是回收再利用的convertView,那其中一種的根本沒辦法 06/08 00:53
8F:→ ssccg: 當成另一種再利用 06/08 00:54
9F:→ ssccg: 然後你沒檢查,所以當進來的是另一種,holder裡面對應欄位 06/08 00:59
10F:→ ssccg: 就是null 06/08 00:59
11F:→ ssccg: 可以實作getViewTypeCount()、getItemViewType(int) 06/08 01:00
12F:→ ssccg: 讓Adapter只會傳正確種類的convertView進來 06/08 01:03
13F:→ just3345678: 謝了 好像懂了 所以hodler 對應的layout不一樣 06/08 09:46
14F:→ just3345678: 然後發生衝突所以跳掉吧 06/08 09:46
15F:推 jerry8034: ! 06/22 18:00