2017-07-17 3 views
0

J'ai une application qui contient des éléments dans ArrayList qui sont stockés dans les préférences partagées et je veux supprimer des éléments particuliers de ArrayList dans la préférence partagée. Comment puis-je faireComment supprimer des éléments de arraylist stockés dans sharedPreference dans android?

code: -

String jsonData = sharedPreference.getAppsArrayListData(); 
         Type type = new TypeToken<ArrayList<WhiteListModel>>() { 
         }.getType(); 
         whiteListStorage = gson.fromJson(jsonData, type); 

code de classe de préférence partagée: -

private SharedPreferences pref; 
private SharedPreferences.Editor editor; 
// Context 
private Context _context; 

// Shared pref mode 
int PRIVATE_MODE = 0; 

// Sharedpref file name 
private static final String PREF_NAME = "pref"; 
private static final String NOTIFICATION = "appData"; 

public MySharedPreference(Context context) { 
    this._context = context; 
    pref = _context.getSharedPreferences(PREF_NAME, PRIVATE_MODE); 
    editor = pref.edit(); 
} 

public void saveAppsArrayListData(String scoreString) { 
    editor.putString(NOTIFICATION, scoreString); 
    editor.commit(); 
} 

public String getAppsArrayListData() { 
    return pref.getString(NOTIFICATION, ""); 
} 

}

+0

Supprimez simplement ces données par position ou chaîne de arrayList et réinitialisez cette valeur dans sharedPreference. –

+0

pls se référer à un snipshot code – Niraj

Répondre

1

Pour supprimer un pref enregistré spécifique puis utilisez

SharedPreferences.Editor editor = settings.edit(); 
editor.remove("tag_to_delete"); 
editor.commit(); 

Si vous voulez t o supprimer des éléments particuliers de ArrayList dans la préférence partagée puis supprimer les éléments de la liste avec list.remove(position) et enregistrez-le à nouveau

+0

@Niraj Avez-vous résolu votre problème? –