J'essaie d'enregistrer une valeur bool dans UserDefaults à partir d'un commutateur UIS et de la récupérer dans un autre affichage. Cependant, j'ai essayé de suivre plusieurs tutoriels et d'empiler des réponses et aucun ne semble fonctionner.Enregistrement et récupération d'un booléen avec UserDefaults
Voici comment j'enregistrer:
class SettingsViewController: UITableViewController {
@IBOutlet weak var soundSwitchOutlet: UISwitch!
@IBAction func soundSwitch(_ sender: UISwitch) {
UserDefaults.standard.set(soundSwitchOutlet.isOn, forKey: "sound")
}
et voilà comment je suis en train de le récupérer dans une autre vue:
if let savedValue = UserDefaults.standard.bool(forKey: "sound") {
boolValue = savedValue
}
//this is inside viewDidLoad and "boolValue" was declared outside viewDidLoad//
Pour une raison ce code me donne erreurs et aucune des choses que j'ai essayé ont travaillé. Comment puis-je enregistrer un booléen dans UserDefaults et le récupérer dans une autre vue?
Edit: Je pense avoir corrigé la première partie. Cependant, la façon dont je récupère le booléen semble être totalement fausse. Aussi: Aucune autre réponse stackExchange ne répond à ce que je demande, du moins pas dans swift.
double possible de http://stackoverflow.com/questions/34373668/how-can-i-save-a-boolean-in-nsdefaults-when-a -bouton-est-pressé? –
'UserDefaults.standard.set (sender.isOn, forKey:" son ")' –
lecture bool pour la clé retourne un Bool (pas optionnel) 'boolValue = UserDefaults.standard.bool (forKey:" son ")' –