IndexOutOfBounds en Spinner?

Tengo un problema con la interpretación de la pila de traza .. La peoblem es que no hay clase de mi paquete y por lo que es difícil para mí para averiguar lo que está sucediendo .. Como rastro en barbecho, creo que se trata de un adaptador y spinner , Pero en esa página tengo 6 spinners, los depuro todos y no encontré nada raro (como selectedItemPosition o algo) ..

Tal vez alguien tenía un problema similar? Aquí está el rastro. Si necesitas algún código, dime

Uncaught handler: thread main exiting due to uncaught exception java.lang.IndexOutOfBoundsException at java.util.Arrays$ArrayList.get(Arrays.java:72) at android.widget.ArrayAdapter.getItem(ArrayAdapter.java:298) at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:351) at android.widget.ArrayAdapter.getView(ArrayAdapter.java:323) at android.widget.AbsSpinner.onMeasure(AbsSpinner.java:198) at android.view.View.measure(View.java:7987) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3023) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:888) at android.widget.LinearLayout.measureVertical(LinearLayout.java:350) at android.widget.LinearLayout.onMeasure(LinearLayout.java:278) at android.view.View.measure(View.java:7987) at android.widget.ScrollView.measureChildWithMargins(ScrollView.java:893) at android.widget.FrameLayout.onMeasure(FrameLayout.java:245) at android.widget.ScrollView.onMeasure(ScrollView.java:276) at android.view.View.measure(View.java:7987) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3023) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:888) at android.widget.LinearLayout.measureVertical(LinearLayout.java:350) at android.widget.LinearLayout.onMeasure(LinearLayout.java:278) at android.view.View.measure(View.java:7987) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3023) at android.widget.FrameLayout.onMeasure(FrameLayout.java:245) at android.view.View.measure(View.java:7987) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3023) at android.widget.FrameLayout.onMeasure(FrameLayout.java:245) at android.view.View.measure(View.java:7987) at android.view.ViewRoot.performTraversals(ViewRoot.java:763) at android.view.ViewRoot.handleMessage(ViewRoot.java:1633) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:123) at android.app.ActivityThread.main(ActivityThread.java:4363) 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:877) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:635) at dalvik.system.NativeStart.main(Native Method) 

No se que hacer..

Vea si tiene setSelection () llamado en cualquiera de los hilanderos que pueden tener un índice que sea mayor que el tamaño del adaptador del hilandero. Por ejemplo, si su hiladora tiene dos elementos y si llama a setSelection (2), esto dará lugar a la excepción IndexOutOfBoundsException.

Inspeccione cuidadosamente el registro, busque otro rastro de pila por encima o por debajo del que ha publicado. He tenido esto me pasa un par de veces. Cada vez que pienso que mi código no se hace referencia en el rastro de la pila, miro una segunda vez y lo encuentro.

Para encontrar qué hilandero es el que tiene el problema:

  • Hacer una copia de seguridad de su página
  • Eliminar 5 de los 6 hilanderos
  • Prueba de la página
  • Repita para mantener sólo 1 hilandero en el momento, hasta que haya hecho para probar cada hilandero en su página

Eso es lo que haría. Espero que esto sea de ayuda.

Al seguir el comentario de @FrancescoR, este código puede ayudarle a evitar que su código se bloquee mientras intenta localizar la llamada incorrecta. Tuve que hacer esto una respuesta porque añadir código en los comentarios fue bastante desagradable.

 private void spinnerSetSelectionChecked(Spinner spin, int index) { spinnerSetSelectionChecked(spin, index, true); } private void spinnerSetSelectionChecked(Spinner spin, int index, boolean animate) { final int count = spin.getAdapter().getCount(); if( (count > 0) && (index < count) ) { spin.setSelection(index, animate); } else { // do nothing } } 
  • Set onClickListener para el elemento spinner?
  • Android: Selección de spinner alineada a la izquierda
  • Rellenando Spinner con SimpleAdapter en Android
  • Android: cómo invocar onNavigationItemSelected cuando se selecciona de nuevo el elemento giratorio
  • Android - ¿Cómo obtener el valor del elemento seleccionado de una ruleta y ponerlo en una cadena?
  • Cómo hacer que un spinner material de diseño surgen de un CardView
  • Spinner: onItemSelected no se llama cuando el elemento seleccionado permanece igual
  • Cómo usar spinner
  • Spinner se inicializa cuando empieza mi actividad - Android
  • ¿Puede el usuario desmarcar el valor en la hiladora?
  • Spinner error gráfico API 21
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.