M
Manuel1805
Ambitioniertes Mitglied
- 2
Hallo zusammen,
ich möchte in meiner App verschiedene Abfrageergebnisse speichern. Bisher hatte ich die SharedPreferences in meiner Fragment-Klasse implementiert. Da ich viele Fragmentklassen mit Speicheroption nutzen möchte, versuche ich den Code nur einmal zu schreiben. Dieser soll in einer externen Klasse landen. Leider bekomme ich immer eine NullPointerException
Kann mir jemand sagen, wo mein Fehler liegt, bzw. ggfs. wie ich diesen korrigieren kann?
Hier die neue Speicherklasse:
Hier die Klasse die die Speicherklasse verwendet
Die java.lang.NullPointerException tritt auf bei der Mehtode speichern Zeile Prefs.
ich möchte in meiner App verschiedene Abfrageergebnisse speichern. Bisher hatte ich die SharedPreferences in meiner Fragment-Klasse implementiert. Da ich viele Fragmentklassen mit Speicheroption nutzen möchte, versuche ich den Code nur einmal zu schreiben. Dieser soll in einer externen Klasse landen. Leider bekomme ich immer eine NullPointerException
Kann mir jemand sagen, wo mein Fehler liegt, bzw. ggfs. wie ich diesen korrigieren kann?
Hier die neue Speicherklasse:
Code:
import android.app.Fragment;
import android.content.Context;
import android.content.SharedPreferences;
public class SpeichernUndLaden extends Fragment {
SharedPreferences prefs;
public void speichern(String Aufgabe, String Ergebnis) {
prefs = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor meinEditor = prefs.edit();
meinEditor.putString(Aufgabe, Ergebnis);
meinEditor.commit();
}
public String laden(String Aufgabe) {
prefs = getActivity().getPreferences(Context.MODE_PRIVATE);
return (String) prefs.getString(Aufgabe, "unbeantwortet");
}
Hier die Klasse die die Speicherklasse verwendet
Code:
public class SinnPageAdapter extends PageAdapter {
SpeichernUndLaden speichernundladen = new SpeichernUndLaden();
...
private OnClickListener frage1 = new OnClickListener() {
@Override
public void onClick(View v) {
if (v == antwort11) { // richtig
richtigToast();
speichernundladen.speichern("Aufgabe1", "richtig");
} else if (v == antwort12) { // falsch
falschToast("Richtig: Antwort 1");
speichernundladen.speichern("Aufgabe1", "falsch");
}
};
}
...
Die java.lang.NullPointerException tritt auf bei der Mehtode speichern Zeile Prefs.