Sto sviluppando un'applicazione per dizionari. Nella mia app, presumo che l'utente voglia salvare le parole preferite. Ho deciso di utilizzare SharedPreferences per salvare questi valori (sono consapevole del fatto che SQLite e i file sono migliori ma sono bloccato su "SharedPreferences", quindi continuate così).Come utilizzare SharedPreferences per salvare più di un valore?
Qui sotto è il mio codice:
@Override
public void onClick(View v) {
SharedPreferences faves = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
{
SharedPreferences.Editor editor = faves.edit();
editor.putString("favourite", mSelectedDB + "::" + mCurrentWordId + "::" + mCurrentWord + ",");
editor.commit();
}
Log.i(CONTENT_TAG,"Favourite saved!");
Toast toast = Toast.makeText(ContentView.this, R.string.messageWordAddedToFarvourite, Toast.LENGTH_SHORT);
toast.show();
}
Il problema è che non mantiene più di una parola preferita. Voglio dire che una sola parola preferita viene salvata e quando ne viene aggiunta una nuova, la precedente viene cancellata.
Quindi, come è possibile modificare il codice precedente in modo che questo problema venga risolto?
Potete aiutarci? Grazie mille.
Grazie mille. Ma non ho ancora capito cosa fare a livello di programmazione. Ecco la forma di stringa SharedPreferences: ' dict_name :: 149272 :: go, '. Dove dovrebbe essere inserito il tuo codice? –
@ user998032 Ho aggiunto il codice per spiegare come possiamo aggiungere più elementi preferiti. Puoi usare il codice così com'è, funzionerà per te. –
@@ Muhammad Nabeel Arif: Grazie mille, ma ancora senza fortuna, mi dispiace! Voglio che il preferito venga salvato dopo onClick ma molti errori vengono generati dopo il codice modificato sopra. –