0

Ich erstelle eine benutzerdefinierte Klingeltonauswahl für meine App. Die Klasse heißt SoundPicker und erweitert sich um FragmentActivity. Ich versuche den ausgewählten Klingelton in der Einstellungsdatei meiner App zu speichern.Versuche, die gemeinsame Einstellung einer Fragmentaktivität zu aktualisieren

Hier ist mein Code:

String selectedResource = "blablabla"; 
SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(getBaseContext()); 
SharedPreferences.Editor editor = sharedPref.edit(); 
editor.putStringSet("notifications_new_message", selectedResource); 
editor.commit(); 

Das Problem ist, dass ich einen Fehler, auf die neue Zeichenfolge beziehe ich gesetzt bin versucht - selectedResource

Das ist der Fehler, den ich bekommen:

Falscher 2. Argumenttyp. Gefunden: 'java.lang.String', erforderlich: 'java.util.Set'

putStringSet (String, java.util.Set) in Editor kann nicht angewendet werden (String, java.lang.String)

Was mache ich hier falsch? Vielen Dank!

Antwort

4

Bitte seien Sie vorsichtig, putString und putStringSet ist andere Methode verwenden so putString statt

editor.putString ("notifications_new_message", selectedResource);

+0

Wie Habe ich das nicht bemerkt? Ich verschwende gerade eine Stunde damit, herauszufinden, was hier vor sich geht: facepalm: – morha13

+0

Du brauchst vielleicht etwas Ruhe, haha –

2

Sie versuchen, Zeichenfolge zu setzen, sondern putStringSet 2. Argument vom Typ akzeptieren gesetzt

Verwendung putString zum Speichern von String-Wert oder String Set erstellen und verwenden putStringSet

//To store string value 
String selectedResource = "blablabla"; 
SharedPreferences sharedPref = 
PreferenceManager.getDefaultSharedPreferences(getBaseContext()); 
SharedPreferences.Editor editor = sharedPref.edit(); 
editor.putString("notifications_new_message", selectedResource); 
editor.commit(); 



//To Store string set 
Set<String> hs = ss.getStringSet("set", new HashSet<String>()); 

String selectedResource = "blablabla"; 

hs.add(selectedResource); 

SharedPreferences sharedPref =   
PreferenceManager.getDefaultSharedPreferences(getBaseContext()); 
SharedPreferences.Editor editor = sharedPref.edit(); 
editor.putStringSet("notifications_new_message", hs); 
editor.commit(); 
Verwandte Themen