ArrayAdapter y ListView – ArrayIndexOutOfBoundsException
Realmente espero que alguien me ayude con esto. He estado atrapado en ella para siempre. De vez en cuando, cuando alguien está usando mi aplicación, forzará cerrar con esta excepción:
java.lang.ArrayIndexOutOfBoundsException at android.widget.AbsListView$RecycleBin.addScrapView(AbsListView.java:3572) at android.widget.AbsListView.trackMotionScroll(AbsListView.java:2487) at android.widget.AbsListView.onTouchEvent(AbsListView.java:2001) at android.widget.ListView.onTouchEvent(ListView.java:3234) at android.view.View.dispatchTouchEvent(View.java:3709) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:874) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924) at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1695) at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1116) at android.app.Activity.dispatchTouchEvent(Activity.java:2068) at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1679) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924) at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1695) at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1116) at android.app.Activity.dispatchTouchEvent(Activity.java:2068) at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1679) at android.view.ViewRoot.handleMessage(ViewRoot.java:1697) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:123) at android.app.ActivityThread.main(ActivityThread.java:4568) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:521) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) at dalvik.system.NativeStart.main(Native Method)
Sin embargo, no puedo entender por qué. Es relativamente raro, no reproducible, y el stacktrace es completamente inútil porque no incluye ninguno de mi código.
- ¿Resplandor de encargo del color del resplandor / del borde para ListView?
- ListFragment OnListItemClick no se llama
- ListView filtrar correctamente pero muestra un resultado incorrecto
- Android ListView scrollTo
- ¿Hay una manera de compartir un mismo LayoutManager entre múltiples RecyclerViews anidados
¿Es un error en el propio Android?
- Android: margen / relleno para el ListView sin tener el margen aplicado al encabezado?
- Android ListView Adapter notifyDataSetInvalidated () vs notificarDataSetChanged ()
- ListView.addFooterView () no funciona si no hay elementos en listview
- Actualizar dinámicamente los tipos de vista de ListView
- ¿Por qué ListView y RecyclerView son focusableInTouchMode?
- Subclasificación de SimpleCursorAdapter para incluir convertView para la conservación de la memoria
- Cambiar un divisor con setDivider en un ListActivity sin un ListView personalizado?
- Acceso a @android: id / list ListView desde el código
¿Qué versión de Android está ejecutando? De lo que puedo decirle a su adaptador está devolviendo el recuento equivocado de getViewTypeCount () (o está cambiando el tipo de vista de forma dinámica, lo cual es un gran error).
Además de lo que dijo Romain , parece importante que el tipo de vista más grande sea más pequeño que el tipo de vista.
Tenía dos tipos de vista definidos (por lo que alguna vez razón) con 1
y 2
y devuelto 2
en getViewTypeCount()
que me dio la misma excepción que anteriormente. La re-indexación de los tipos a 0
y 1
resolvió el problema.
- Lista de ordenación de los puntos lon \ lat, comience con los puntos más cercanos
- Android – ¿Cómo imprimir desde un dispositivo Android?