我試圖從UISwitch中爲UserDefaults保存一個bool值,並在另一個視圖中檢索它。但是,我已經嘗試了以下多個教程和堆棧答案,而且沒有一個可以工作。用UserDefaults保存並檢索一個布爾值
這是我如何保存它:
class SettingsViewController: UITableViewController {
@IBOutlet weak var soundSwitchOutlet: UISwitch!
@IBAction func soundSwitch(_ sender: UISwitch) {
UserDefaults.standard.set(soundSwitchOutlet.isOn, forKey: "sound")
}
,這就是我正在嘗試另一種觀點認爲檢索它:
if let savedValue = UserDefaults.standard.bool(forKey: "sound") {
boolValue = savedValue
}
//this is inside viewDidLoad and "boolValue" was declared outside viewDidLoad//
是有原因的這段代碼是給我錯誤和我嘗試過的東西都沒有奏效。如何將一個布爾保存到UserDefaults並在另一個視圖中檢索它?
編輯:我想我修好了第一部分。但是,我檢索布爾值的方式似乎完全錯誤。另外:沒有其他stackExchange答案迴應我的要求,至少不是很快。
的可能的複製http://stackoverflow.com/questions/34373668/how-can-i-save-a-boolean-in-nsdefaults-when-a按鈕被按下? – 2017-02-27 05:06:00
'UserDefaults.standard.set(sender.isOn,forKey:「sound」)' –
reading bool for key returns a Bool(not optional)'boolValue = UserDefaults.standard.bool(forKey:「sound」)' –