2016-04-21 38 views
0

我有一個RecyclerView一個SwipeRefreshLayout裏面,當我重新載入我的網頁,當SwipeRefreshLayout正在加載,我點擊的RecyclerView該項目,它崩潰。Android的 - 崩潰的RecyclerView當點擊時SwipeRefreshLayout裝載

04-21 13:14:49.605 25586-25586/? E/AndroidRuntime: FATAL EXCEPTION: main 
               Process: com.boxopen.funstack, PID: 25586 
               java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0 
                at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255) 
                at java.util.ArrayList.get(ArrayList.java:308) 
                at com.boxopen.funstack.adapter.RecycleBookAdapter$BookViewHolder.onClickLike(RecycleBookAdapter.java:339) 
                at com.boxopen.funstack.adapter.RecycleBookAdapter$BookViewHolder.access$100(RecycleBookAdapter.java:64) 
                at com.boxopen.funstack.adapter.RecycleBookAdapter$BookViewHolder$2.onDoubleClick(RecycleBookAdapter.java:122) 
                at com.boxopen.funstack.listener.DoubleClickListener.onClick(DoubleClickListener.java:36) 
                at android.view.View.performClick(View.java:4478) 
                at android.view.View$PerformClick.run(View.java:18698) 
                at android.os.Handler.handleCallback(Handler.java:733) 
                at android.os.Handler.dispatchMessage(Handler.java:95) 
                at android.os.Looper.loop(Looper.java:149) 
                at android.app.ActivityThread.main(ActivityThread.java:5268) 
                at java.lang.reflect.Method.invokeNative(Native Method) 
                at java.lang.reflect.Method.invoke(Method.java:515) 
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:609) 
                at dalvik.system.NativeStart.main(Native Method) 

04-21 13:14:49.675 182-1124 /? E/IMGSRV:0:PVRDRMOpen:TP3,RET = 57

+0

你的清單有0項,你想訪問0索引,所以它崩潰。 – Amir

回答

2

從我個人理解通過你的問題和日誌基本上你是清除arraylistonRefresh()但不通知適配器,清單已被清除。

請致電notifyDataSetChanged()結算arraylist

+0

omg,只是忘記調用mAdapter.notifyDataSetChanged(); ,謝謝你了,救救我 – thanhcs94

+0

天@ thanhcs94你應該接受並給予好評的答案,如果它幫你 –

+0

是的,我知道了,謝謝你,但我沒有足夠的聲譽做 – thanhcs94

0

你應該把條件檢查的大小(如陣列,ArrayList中......使用你。)數據

1

好像你已經清除在刷新列表後,但項目仍然會在你的recyclerview。您應該通知您的適配器列表現在是空的。 在你目前的情況下,開始滾動可能會導致應用程序崩潰?!

+0

謝謝,我忘了:)保存我的一天 – thanhcs94

相關問題