Activity stürzt beim 2.mal ab

  • 2 Antworten
  • Letztes Antwortdatum
kukuk

kukuk

App-Anbieter (kostenlos)
37
Ich habe mal wieder ein Problem, bei dem ich nicht weiter komme. Wenn ich meine App starte wird die MainActivity auf meinem Telefon ganz normal angezeigt. Wenn ich jetzt eine neue Activity aufrufe, und dann wieder zurück gehe, schmiert die MainActivity ab:

Bei den angegebenen Zeilen habe ich auch schon nachgeschaut. 313 ist eine leere Zeile 351 enthält ein else.
Wie kann ich denn rausbekommen wo der Fehler auftritt?

Irgendein Array verursacht den Fehler. Wie kann es denn sein, das beim ersten Start der App es zu keinem Fehler kommt und nach dem öffnen einer anderen Activity und dann zurückkehren zur Main Absturz?

10-18 17:11:09.203: E/AndroidRuntime(4500): FATAL EXCEPTION: main
10-18 17:11:09.203: E/AndroidRuntime(4500): java.lang.ArrayIndexOutOfBoundsException
10-18 17:11:09.203: E/AndroidRuntime(4500): at java.util.ArrayList.get(ArrayList.java:313)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.ArrayAdapter.getItem(ArrayAdapter.java:298)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:351)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.ArrayAdapter.getView(ArrayAdapter.java:323)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.Spinner.makeAndAddView(Spinner.java:193)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.Spinner.layout(Spinner.java:152)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.Spinner.onLayout(Spinner.java:116)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1254)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.LinearLayout.layoutHorizontal(LinearLayout.java:1243)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.TableRow.onLayout(TableRow.java:121)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1254)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1130)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.TableLayout.onLayout(TableLayout.java:440)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.FrameLayout.onLayout(FrameLayout.java:338)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.HorizontalScrollView.onLayout(HorizontalScrollView.java:1570)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.FrameLayout.onLayout(FrameLayout.java:338)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.ScrollView.onLayout(ScrollView.java:1565)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.RelativeLayout.onLayout(RelativeLayout.java:912)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.FrameLayout.onLayout(FrameLayout.java:338)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1254)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1130)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.LinearLayout.onLayout(LinearLayout.java:1047)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.widget.FrameLayout.onLayout(FrameLayout.java:338)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.View.layout(View.java:7175)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.ViewRoot.performTraversals(ViewRoot.java:1146)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.view.ViewRoot.handleMessage(ViewRoot.java:1866)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.os.Handler.dispatchMessage(Handler.java:99)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.os.Looper.loop(Looper.java:130)
10-18 17:11:09.203: E/AndroidRuntime(4500): at android.app.ActivityThread.main(ActivityThread.java:3687)
10-18 17:11:09.203: E/AndroidRuntime(4500): at java.lang.reflect.Method.invokeNative(Native Method)
10-18 17:11:09.203: E/AndroidRuntime(4500): at java.lang.reflect.Method.invoke(Method.java:507)
10-18 17:11:09.203: E/AndroidRuntime(4500): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
10-18 17:11:09.203: E/AndroidRuntime(4500): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
10-18 17:11:09.203: E/AndroidRuntime(4500): at dalvik.system.NativeStart.main(Native Method)
 
Stelle deinen Code zur Verfügung

10-18 17:11:09.203: E/AndroidRuntime(4500): java.lang.ArrayIndexOutOfBoundsException
10-18 17:11:09.203: E/AndroidRuntime(4500): at java.util.ArrayList.get(ArrayList.java:313)

Du versuchst einfach nur etwas aus einer Arraylist zu bekommen und greifst dabei mit einem falschen Index zu...
 
Hey ich hab jetzt schonmal das Problem lokalisieren können. Von der onCreate für Ich einen AsyncTask aus. Dieser wird kein 2. mal aufgerufen und dadurch gibt es ein Problem mit meinen Variablen. Muss man AsyncTask irgendwie beenden? SpinnerErstellenTask wird nur einmal ausgeführt....

oncreate:
pinnerErstellenTask spinner_erstellen_task = new SpinnerErstellenTask();
spinner_erstellen_task.execute(new String[] { "" });




private class SpinnerErstellenTask extends AsyncTask<String, Void, String> {
@override
protected String doInBackground(String... urls) {

String response = "";
try{
kategorie_basierte_stunden_ermitteln();
zusatz_spinner_erstellen();
plus_minus_spinner_erstellen();
verdienst_checken();

}catch (Exception e){

}
return response;
}

@override
protected void onPostExecute(String result) {
main_thread = false;


rating_system_starten();

einstellung_ueberstunden_ansicht_einlesen();

meldung_einstellungs_menü();


}
}
 
Zurück
Oben Unten