J'ai un problème avec l'enregistrement de la chaîne dans SharedPreference. Cette classe enregistre le numéro de carte et récupère la chaîne à partir de SharedPreference. this my classe MyShrePreference. Je ne sais pas pourquoi cette chaîne ne sauvegarde pas dans SharedPreference.Je ne peux pas enregistrer les données dans Shareprefence Chaîne
public class MySharepreference {
public static final String PREFS_NAME = "POSITION";
public static final String POSITION = "current";
public String nameString;
public MySharepreference() {
super();
}
public void saveNumberCard(Context context, String position) {
SharedPreferences settings;
SharedPreferences.Editor editor;
settings = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
editor = settings.edit();
editor.putString(POSITION, position);
editor.commit();
}
public String getNumberCard(Context context) {
SharedPreferences sharedPreferences;
sharedPreferences = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
if (sharedPreferences.contains(POSITION)) {
nameString = sharedPreferences.getString(POSITION, "");
}
return nameString;
}
}
sauver à SharedPreference à l'adaptateur
onBindViewHolder
@Override
public void onBindViewHolder(CardViewHolder holder, final int position) {
mySharepreference = new MySharepreference();
if (position == lastCheckedPos) {
mySharepreference.saveNumberCard(mContext, card.getNumberCard());
}
mieux expliquer votre problème. –
Pouvez-vous ajouter le code où vous appelez cette méthode –
Votre code est correct, Il suffit de supprimer ** if (sharedPreferences.contains (POSITION)) ** –