Android comment définir la valeur par défaut de EditTextPreference de SharedPreference?

Ce temps dans le même projet, je me pose un peu question difficile, où dans settings.xml fichier dans le res/xml dossier:

<EditTextPreference
    android:key="weight" 
    android:title="@string/update_user_weight"
    android:persistent="true"
    android:dialogTitle="@string/update_user_weight"
    android:dialogMessage="@string/update_user_weight_message"
    android:defaultValue="" />

<EditTextPreference
    android:key="age"
    android:title="@string/update_user_age"
    android:persistent="true"
    android:dialogTitle="@string/update_user_age"
    android:dialogMessage="@string/update_user_age_message"
    android:defaultValue="" />

et dans un fichier de classe UserData.java:

SharedPreferences storeWeightAndAge = getSharedPreferences("WeightAndAgeStorage", Context.MODE_PRIVATE);
Editor store = storeWeightAndAge.edit();
store.putString("weight", weightData);
store.putString("age", ageData);
store.commit();

Ce que j'essaie de faire ici est de mettre les deux ci-dessus EditTextPreferences' android:defaultValue stockées weight et age dans le SharedPreferences respectivement.

Maintenant, comment dois-je faire?

EDIT: fourni Settings.java fichier qui utilise le settings.xml fichier:

package com.example.drinkup;

import android.content.SharedPreferences;
import android.os.*;
import android.preference.PreferenceFragment;
import android.preference.PreferenceActivity;
import android.preference.PreferenceManager;

public class Settings extends PreferenceActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.settings);



    }

}
  • Vous souhaitez définir android:valeur par défaut à partir du code?
  • Si c'est uniquement possible à l'aide de code, c'est sûr. Mais si le xml peut vous aider à trouver par ses propres, que ce serait mieux. Comme: @strings/.... etc etc... quelque chose comme ça.
  • Dans le fichier xml, vous pouvez le faire par: android:defaultValue="YOUR_DEFAULT_VALUE". Notez que vous obtenez votre valeur par défaut de strings.xml android:defaultValue="@cordes/....".
  • Oh non je ne fais pas de plan sur la configuration des valeurs par défaut de strings.xml je voulais juste donner un exemple de définition des valeurs par défaut comme dans une manière similaire à la façon que vous le feriez à partir de strings.xml. Je veux mettre les valeurs par défaut comme les cordes que j'ai stockés dans le SharedPreferences qui leurs clés "weight" et "age".
InformationsquelleAutor blaberer | 2015-02-07