UISwitch
を使用して、NSUserDefaults
のブール値を別のクラスに渡そうとしています。何らかの理由で、スイッチを含むクラスでは、値をif
に設定することになっているNSUserDefaults
ステートメントはスイッチ宣言を読み取ることができません。
@IBOutlet var shrimpSwitch: UISwitch!
@IBOutlet var nutSwitch: UISwitch!
@IBOutlet var dairySwitch: UISwitch!
let switchState = NSUserDefaults.standardUserDefaults()
if shrimpSwitch.switch.on{
switchState.setBool(true, forKey: "shrimpSwitch")
}
else{
switchState.setBool(false, forKey: "shrimpSwitch")
}
if nutSwitch.on{
switchState.setBool(true, forKey: "nutSwitch")
}
else{
switchState.setBool(false, forKey: "nutSwitch")
}
if dairySwitch.on{
switchState.setBool(true, forKey: "dairySwitch")
}
else{
switchState.setBool(false, forKey: "dairySwitch")
}
最初のIfステートメント(shrimpSwitch.on)では、Expected Declarationと表示されます。スイッチをすべて間違っていると宣言していますか?任意の助けをいただければ幸いです。ありがとう
問題は、コードをメソッド内に配置する必要があることです。必要なのは、viewDidLoad()または他のメソッドに移動することだけです。