Swift - UserDefaults: Unterschied zwischen den Versionen
Aus Wikizone
(Die Seite wurde neu angelegt: „<syntaxhighlight lang="swift"> import UIKit let defaults = UserDefaults.standard let dictionaryKey = "myDictionary" // good Practice to set a constant for bet…“) |
|||
| (2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| + | == Links == | ||
| + | [[Swift (Programmiersprache)]] | ||
| + | |||
| + | == Beispiel == | ||
<syntaxhighlight lang="swift"> | <syntaxhighlight lang="swift"> | ||
import UIKit | import UIKit | ||
| Zeile 16: | Zeile 20: | ||
// reading... | // reading... | ||
| − | let volume = defaults.float(forKey: "Volume") // | + | let volume = defaults.float(forKey: "Volume") // there are methodds for all basic types |
| − | let appLastOpened = defaults.object(forKey: "AppLastOpened") // | + | let appLastOpened = defaults.object(forKey: "AppLastOpened") // and for objects |
let myArray = defaults.array(forKey: "myArray") | let myArray = defaults.array(forKey: "myArray") | ||
let myDictionary = defaults.dictionary(forKey: dictionaryKey) | let myDictionary = defaults.dictionary(forKey: dictionaryKey) | ||
| Zeile 30: | Zeile 34: | ||
UserDefaults.standard.set("Hallo, Welt!", forKey: "Begrüßung") | UserDefaults.standard.set("Hallo, Welt!", forKey: "Begrüßung") | ||
| − | + | Es gibt Methoden für alle Basistype. Mit der Methode object(forKey:), bekommt man ein Any Optional. Das kann man dann mit as downcasten. | |
let begrüßung = UserDefaults.standard.object(forKey: "Begrüßung") as? String | let begrüßung = UserDefaults.standard.object(forKey: "Begrüßung") as? String | ||
Aktuelle Version vom 24. Januar 2023, 11:52 Uhr
Links[Bearbeiten]
Swift (Programmiersprache)
Beispiel[Bearbeiten]
import UIKit
let defaults = UserDefaults.standard
let dictionaryKey = "myDictionary" // good Practice to set a constant for better reuse and less typing errors
// setting defaults key:value pairs...
defaults.set(0.24, forKey: "Volume")
defaults.set(true, forKey: "MusicOn")
defaults.set("Stephan", forKey: "PlayerName")
defaults.set(Date(), forKey: "AppLastOpened")
let array = [1, 2, 3]
defaults.set(array, forKey: "myArray")
let dictionary = ["name": "Stephan"]
defaults.set(dictionary, forKey: dictionaryKey)
// reading...
let volume = defaults.float(forKey: "Volume") // there are methodds for all basic types
let appLastOpened = defaults.object(forKey: "AppLastOpened") // and for objects
let myArray = defaults.array(forKey: "myArray")
let myDictionary = defaults.dictionary(forKey: dictionaryKey)
Hinweise[Bearbeiten]
Am Besten setzt man zuerst eine Konstante, damit man leicheter auf die UserDefaults zugreifen kann
let defaults = UserDefaults.standard
Um einen Wert für einen Schlüssel zu setzen, verwenden Sie die Methode set:
UserDefaults.standard.set("Hallo, Welt!", forKey: "Begrüßung")
Es gibt Methoden für alle Basistype. Mit der Methode object(forKey:), bekommt man ein Any Optional. Das kann man dann mit as downcasten.
let begrüßung = UserDefaults.standard.object(forKey: "Begrüßung") as? String
Sie können auch die Methode set verwenden, um andere Typen wie Bool, Int, Float, Double, URL und Data zu speichern:
UserDefaults.standard.set(true, forKey: "istErsterStart") let istErsterStart = UserDefaults.standard.bool(forKey: "istErsterStart")
Sie können auch die Methode removeObject(forKey:) verwenden, um einen Wert für einen Schlüssel zu entfernen:
UserDefaults.standard.removeObject(forKey: "Begrüßung")
Es ist wichtig zu beachten, dass UserDefaults für kleine Mengen an Daten gedacht ist und nicht für große Dateien oder vertrauliche Daten geeignet ist.