ASE-Projekte-WS-2021 / ase-ws-21-konferenzassistent

ase-ws-21-konferenzassistent created by GitHub Classroom
0 stars 0 forks source link

App crashes when click the "+" button the first time open the application after installation #168

Closed Leosssss closed 2 years ago

jmhoffmann9612 commented 2 years ago
2022-03-23 14:31:42.676 21227-21227/com.example.myapplication E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.myapplication, PID: 21227
    java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
        at java.util.ArrayList.set(ArrayList.java:453)
        at com.example.myapplication.CreateMeetingBottomSheetAdapter.onCreate(CreateMeetingBottomSheetAdapter.java:84)
        at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
        at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
        at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
        at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
        at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
        at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1701)
        at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:488)
        at android.os.Handler.handleCallback(Handler.java:938)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loopOnce(Looper.java:346)
        at android.os.Looper.loop(Looper.java:475)
        at android.app.ActivityThread.main(ActivityThread.java:7889)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1009)

CreateMeetingBottomSheetAdapter.java:84 wäre timerSelectValues.set(0, View.VISIBLE); im Block

// preset pairs
presetPairs = database.countdownPresetWIthParentDao().getCountdowns();
presetPairs.forEach(preset ->{
    timerSelectValues.add(View.INVISIBLE);
});
timerSelectValues.set(0, View.VISIBLE);

App stürzt nicht ab, wenn vor Klick auf den + Button mindestens einmal das SettingsFragment aufgerufen wird.

TobiasZels commented 2 years ago

Ja, habe die Funktion das Standard Preset zu erstellen im Settings Fragment geschrieben. Die muss logischerweise in der Main Activity aufgerufen werden, sodass sie beim ersten Start das Preset erstellt, ansonsten läuft die Funktion natürlich ins leere. Kann ich morgen beheben.