Je suis en train de définir la préférence pour une valeur de chaîne comme:Préférences partagées pour une chaîne dans Android
//onCreate
if(name==null){
setprefer();
}
else{
getpref();
}
private void setprefer() {
et1 = (EditText) findViewById(R.id.editText1);
b1 = (Button) findViewById(R.id.button1);
b1.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
s = et1.getText().toString();
if(s.matches(""))
{
//wait!!
Toast.makeText(Home.this, "Enter your name", Toast.LENGTH_SHORT).show();
}
else{
setpref(s);
Intent i = new Intent(Home.this, Homescreen.class);
i.putExtra("name", s);
startActivity(i);
Home.this.finish();
}
}
});
}
private void setpref(String name) {
SharedPreferences pref = this.getSharedPreferences("prefkey", Context.MODE_PRIVATE);
Editor editor = pref.edit();
editor.putString("key", name);
editor.commit();
}
private void getpref() {
SharedPreferences prefs = this.getSharedPreferences("prefkey", Context.MODE_PRIVATE);
s = prefs.getString("key", name);
Intent i = new Intent(Home.this, Homescreen.class);
i.putExtra("name", name);
startActivity(i);
Home.this.finish();
}
Je suis en train de la préférence avec la méthode setprefer(), mais chaque fois que je commence mon activité sa demande fr le nom que j'ai déjà stocké dans ma préférence. D'une certaine façon, je ne suis pas en mesure d'obtenir mes prefereces sauvegardés dans le code ci-dessus. S'il vous plaît suggérer un correctif.
tirez des fichiers du préfixe partagé et vous pouvez également regarder les valeurs – KOTIOS
Je ne suis pas sûr qu'il y ait assez de contexte (en particulier, le code complet actuel de 'onCreate') pour déterminer le problème. – Dallas
rien de plus n'existe dans onCreate. J'appelle juste quelques fonctions comme spécifié. – Shubhankar