Ich erstelle einen Array-Adapter für eine Listenansicht, alles funktioniert ok, ich habe 2 Fragmente und 2 Schaltflächen an der Spitze der Aktionsleiste, die zwischen diesen 2 Fragmente ändert. Mein Problem ist, dass ich Abstürze bekomme, wenn ich mich zu schnell zwischen diesen Frags bewege, wenn ich fragOne öffne, zu fragTwo wechsle und dann schnell zurück zu fragOne. FragOne wirft eine NPE aus dem getActivity-Kontext.Android - NullPointerException von der Erstellung eines Adapters
das ist dass die Linie abstürzt:
adapter = new MainFragmentDocumentAdapter(getActivity(), docsList, DocumentsFragment.this, page);
den Protokollbericht:
E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.bbb.app, PID: 17438
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Object android.content.Context.getSystemService(java.lang.String)' on a null object reference
at android.widget.ArrayAdapter.init(ArrayAdapter.java:310)
at android.widget.ArrayAdapter.<init>(ArrayAdapter.java:104)
at com.bbb.app.UI.adapters.MainFragmentDocumentAdapter.<init>(MainFragmentDocumentAdapter.java:51)
eine Ahnung, wie kann ich lösen dieses Problem?
Sie erhalten Abstürze wegen der Fragment-Lebenszyklus Probleme, die bewirkt manchmal, dass getActivity() null ist. – jvrodrigues
getApplicationContext() ist nicht optimal, da im Adapter nichts formatiert wird. Entweder ContextThemeSchließen Sie den Anwendungskontext mit dem App-Design ein, oder machen Sie den Adapter zu einem globalen Objekt, damit das Fragment nicht erneut instanziiert wird und Ihre App nicht abstürzt. – jvrodrigues
jvrodrigues danke für deine antwort, könntest du ein bisschen mehr darüber erzählen? Ich habe es nicht vollständig verstanden, danke! – JozeRi