Preference-Wert wird nicht überschrieben

T

TanaH

Neues Mitglied
0
Hoffe einer kann mir sagen, wo der Fehler liegt!

Ich öffne Einstellungen über ein Optionsmenu.
Danach starte ich die PreferenceActivity.
Vor der onCreate-Methode will ich abfrage, ob unter Speicherort eine einstellung hinterlegt wurde,
falls nicht,
soll da der Pfad der externen Sdkarte (ich frage natürlich ab, ob sie existiert) in den EditText geschrieben werden.
Mit editor.commit() beende ich das und
mit addPreferencesFromResource füge ich alles ein.
Klicke ich nun aber auf meine Einstellung öffnet sich der EditText und der ist leer.
Beim Debuggen finde ich keine Fehler.
Im Editor.putString (key,value) steht alles richtig drin.

Was mache ich falsch?????
 
Poste doch einfach mal deinen Code, der für das alles verantwortlich sein soll, ansonsten kann man nur "raten" was du falsch machst.

Hast du schon mal nachgesehen, ob die xml für die SharedPrefs erzeugt wird? Wenn ja, steht in der xml auch das drinnen was du reinschreiben willst?
 
Hier mein Code:
einstellung.xml
<PreferenceCategory
android:title="@string/speicher">
<EditTextPreference
android:key="speicherort"
android:summary="Speicherort der Datei"
android:defaultValue="xxx"
android:title="@string/speicherpfad"/>
</PreferenceCategory>


meine PreverenceActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

addPreferencesFromResource(R.xml.einstellungen);

SharedPreferences einst1=PreferenceManager.getDefaultSharedPreferences(this);
String spOrt="";
spOrt=einst1.getString("speicherort", "");

if (spOrt.equals("")){
SharedPreferences einst=getPreferences(MODE_PRIVATE);
SharedPreferences.Editor editor=einst.edit();

String Pfad="";

String statusSD = Environment.getExternalStorageState();
if (statusSD.equals(Environment.MEDIA_MOUNTED)) {
File path = Environment.getExternalStorageDirectory();
Pfad=path.toString();

}

editor.putString("speicherort", Pfad.toString());
editor.commit();
}


}


meinen Aufruf aus meine Activity
Intent intent=new Intent().setClass(this, Einstellung.class);
this.startActivity(intent);


im EditText steht nix drin!!! Habe alles mögliche umgeschrieben, oben mein letzter Versuch.
Vielen Dank für deine Hilfe
 
Hat keiner einen Tip für mich????????
 
Ich bin am Ende mit meinem Latein... er übernimmt einfach nicht den Text den ich reinsetzen will, wenn noch nichts eingegeben wurde.
 

Ähnliche Themen

5
Antworten
22
Aufrufe
1.367
590239
5
SaniMatthias
Antworten
19
Aufrufe
871
swa00
swa00
O
Antworten
15
Aufrufe
2.870
ORHUX
O
Zurück
Oben Unten