2016-03-20 6 views
0
beginnen

Ich möchte Zeichenfolgen entfernen, die in dem NSUserDefaults für die Schlüssel gespeichert werden, die mit "NavView" beginnen.
Ich dachte über die Verwendung der hasPrefix()-Methode, aber ich kann einfach nicht scheinen, es herauszufinden.Entfernen Sie NSUserDefaults für Schlüssel, die mit

Ich weiß, dass andere Programmiersprachen Funktionen wie die Aufnahme jeder Zeichenfolge mit einem bestimmten Anfang durch Übergeben des Präfix, wie sie es gerne haben möchten: alle Zeichenfolgen mit "NavView*" oder etwas finden. (mit Zeichen wie der Stern, um das anzuzeigen)

Irgendwelche Ideen, wie ich das tun könnte, außer das Speichern aller Objekte in einem Array und das Speichern?
Vielen Dank im Voraus!

Antwort

4

Ich glaube, Sie suchen nach etwas, wie:

// Pick all keys that are already saved into user defaults 
let allKeys = NSUserDefaults.standardUserDefaults().dictionaryRepresentation().keys 

// Now remove the object for the keys starting with "NavView" 

for key in allKeys{ 

    if key.hasPrefix("NavView"){ 
     NSUserDefaults.standardUserDefaults().removeObjectForKey(key) 
    } 

} 
+0

Das sieht vielversprechend aus. Ich wusste nichts über die '.key's. Ich werde das versuchen, danke schon. – LinusGeffarth

+0

Funktioniert perfekt, vielen Dank! – LinusGeffarth

+0

Das ist mein Vergnügen :) – iMuzahid