首页 文章

使用Swift的预期声明错误

提问于
浏览
13

我正在尝试使用 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)中,它将说出预期声明 . 我是否宣布开关都错了?任何帮助,将不胜感激 . 谢谢

1 回答

  • 27

    问题是您需要将代码放在方法中 . 您只需将其移动到viewDidLoad()或任何其他方法 .

相关问题