预期的声明错误使用Swift

我想通过使用NSUserDefaultsUISwitch的布尔值传递给另一个类。 出于某种原因,在包含开关的类中,应该将值设置为NSUserDefaultsif语句不能读取开关声明。

ViewController.swift

 @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)中,它会说预期的声明。 我是否宣称所有的开关都是错的? 任何帮助,将不胜感激。 谢谢

问题是你需要把你的代码放在一个方法里面。 所有你需要的是将其移动到viewDidLoad()或任何其他方法。