Ich bekomme diese IndexOutOfBoundsException, aber kann nicht herausfinden, was es verursacht. Meine Listenansicht hat einen Adapter mit einer Liste von Objekten, und die Objekte werden basierend auf einem Zeitstempel entfernt. Das Entfernen erfolgt innerhalb der getView-Methode. Sobald ein Element entfernt wurde, rufe ich notifyDataSetChanged() auf.IndexOutOfBoundsException in meinem Android Listview Adapter
Der vollständige Quellcode ist auf Github verfügbar, und hier ist ein Link zur Listenadaptercode: https://github.com/kenneho/run-for-the-bus/blob/master/app/src/main/java/net/kenneho/runnow/adapters/TravelsAdapter.java
Dies ist der Beginn des Stacktrace Ich erhalte:
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 android.widget.HeaderViewListAdapter.isEnabled(HeaderViewListAdapter.java:164)
at android.widget.ListView.dispatchDraw(ListView.java:3307)
at android.view.View.draw(View.java:15213)
<snip>
ich, dass oft sehen Der Positionswert in getView kann bis zu sechs oder sieben betragen.
Kann hier jemand den Fehler erkennen? Jede Hilfe wird geschätzt.
Grüße, Kenneth
EDIT 1: * Link zu den Aktivitätscode, der die Verwendungen: https://github.com/kenneho/run-for-the-bus/blob/master/app/src/main/java/net/kenneho/runnow/InfoActivity.java * I die wichtigsten logcat Teil hier eingefügt haben: http://pastebin.com/5FtU4EaM
Sie versuchen, auf die ArrayList zuzugreifen, wenn sie leer ist. Veröffentlichen Sie einen Code. – VERT9x
Können Sie Ihren Aktivitätscode posten? Größe ist 0 bedeutet Ihre Liste ist leer. –
* Die Entfernung erfolgt innerhalb der getView-Methode. * Und hier ist das Problem auch remove-Methode vom Adapter ruft bereits notifyDataSetChanged ... – Selvin