android listview Caused by: java.lang.ArrayIndexOutOfBoundsException: length=3; index=3

來源:互聯網
上載者:User

標籤:custom   events   類型   sync   length   getview   開始   async   war   

android listview 適配器在多種類型viewType報錯:

 

Caused by: java.lang.ArrayIndexOutOfBoundsException: length=3; index=32    at android.widget.AbsListView$RecycleBin.addScrapView(AbsListView.java:6822)3    at android.widget.AbsListView.trackMotionScroll(AbsListView.java:5179)4    at android.widget.AbsListView.scrollIfNeeded(AbsListView.java:3558)5    at android.widget.AbsListView.onTouchMove(AbsListView.java:3969)6    at android.widget.AbsListView.onTouchEvent(AbsListView.java:3783)7    at android.widget.ListView.onTouchEvent(ListView.java:4219)8    at android.view.View.dispatchTouchEvent(View.java:8556)9    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2403)10    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2096)11    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2409)12    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2110)13    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2409)14    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2110)15    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2409)16    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2110)17    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2409)18    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2110)19    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2409)20    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2110)21    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2409)22    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2110)23    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2409)24    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2110)25    at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2455)26    at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1756)27    at android.app.Activity.dispatchTouchEvent(Activity.java:2780)28    at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2412)29    at android.view.View.dispatchPointerEvent(View.java:8751)30    at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4200)31    at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4066)32    at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3606)33    at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3659)34    at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3625)35    at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3742)36    at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3633)37    at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3799)38    at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3606)39    at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3659)40    at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3625)41    at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3633)42    at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3606)43    at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5901)44    at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5875)45    at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5846)46    at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6012)47    at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)48    at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)49    at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:176)50    at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:5962)51    at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:6035)

 解決方案:http://stackoverflow.com/questions/2596547/arrayindexoutofboundsexception-with-custom-android-adapter-for-multiple-views-in

The item view type you are returning from

getItemViewType() is >= getViewTypeCount().

也就是你的viewType的type類型必須從0開始,{0,1,2,3...}這樣的.

typecount大於最後一個類型的type即可.

這樣就解決了,ListView多種viewType滑動到底,上滑崩潰的現象.

android listview Caused by: java.lang.ArrayIndexOutOfBoundsException: length=3; index=3

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.