at android.widget.AbsListView$RecycleBin.addScrapView(AbsListView.java:8262)

使用listView 分类报错如下:

 java.lang.ArrayIndexOutOfBoundsException: length=10; index=10

            at android.widget.AbsListView$RecycleBin.addScrapView(AbsListView.java:8262)
            at android.widget.ListView.layoutChildren(ListView.java:1600)
            at android.widget.AbsListView.onLayout(AbsListView.java:2546)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1677)
            at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1531)
            at android.widget.LinearLayout.onLayout(LinearLayout.java:1440)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1055)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1055)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1677)
            at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1531)
            at android.widget.LinearLayout.onLayout(LinearLayout.java:1440)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1055)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1677)
            at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1531)
            at android.widget.LinearLayout.onLayout(LinearLayout.java:1440)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1677)
            at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1531)
            at android.widget.LinearLayout.onLayout(LinearLayout.java:1440)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1677)
            at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1531)
            at android.widget.LinearLayout.onLayout(LinearLayout.java:1440)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
            at android.view.View.layout(View.java:15635)
            at android.view.ViewGroup.layout(ViewGroup.java:4856)
            at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2245)
            at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1967)
            at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1199)

            at android.view.ViewRootImpl$TraversalRunna

原因:

getItemViewType返回值 大于等于getViewTypeCount

解决:

 getViewTypeCount必须大于getItemViewType

猜你喜欢

转载自blog.csdn.net/skylovesky/article/details/42647483