3

我有 SettingsVC(“照片”有 2 个开关)和 MainVC(“代码”有添加触觉反馈按钮的功能)。

我怎样才能做到当您在设置中关闭开关时,该功能将停止工作?

设置VC“照片”

@IBAction func Vib(_ sender: UIButton) {
    let generator = UIImpactFeedbackGenerator(style: .light)
    generator.impactOccurred()
}
4

1 回答 1

5

您可以将开关状态存储在其中UserDefaults,然后在您的函数中检查它。

在您的切换操作中:

@IBAction func switchAction(sender: UISwitch) { 
    if sender.isOn {
        UserDefaults.standard.set(true, forKey: "SwitchState")
    } else {
        UserDefaults.standard.set(false, forKey: "SwitchState")
    }
}

在您的 MainVC 函数中

@IBAction func Vib(_ sender: UIButton) {
    guard UserDefaults.standard.bool(forKey: “SwitchState”) else { return }

    let generator = UIImpactFeedbackGenerator(style: .light)
    generator.impactOccurred()
}
于 2017-11-04T16:49:44.390 回答