1. TanaH, 18.05.2011 #1
    TanaH

    TanaH Threadstarter Android-Hilfe.de Mitglied

    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?????
     
  2. TheUsualSuspect, 18.05.2011 #2
    TheUsualSuspect

    TheUsualSuspect Android-Hilfe.de Mitglied

    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?
     
  3. TanaH, 18.05.2011 #3
    TanaH

    TanaH Threadstarter Android-Hilfe.de Mitglied

    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
     
  4. TanaH, 20.05.2011 #4
    TanaH

    TanaH Threadstarter Android-Hilfe.de Mitglied

    Hat keiner einen Tip für mich????????
     
  5. TanaH, 20.05.2011 #5
    TanaH

    TanaH Threadstarter Android-Hilfe.de Mitglied

    Ich bin am Ende mit meinem Latein... er übernimmt einfach nicht den Text den ich reinsetzen will, wenn noch nichts eingegeben wurde.