Ios 开/关触觉反馈开关(Swift)
我有SettingsVC(“Photo”有2个开关)和MainVC(“Code”有一个添加触觉反馈按钮的功能) 如何使设置中的开关关闭时,功能停止工作Ios 开/关触觉反馈开关(Swift),ios,swift,xcode,haptic-feedback,Ios,Swift,Xcode,Haptic Feedback,我有SettingsVC(“Photo”有2个开关)和MainVC(“Code”有一个添加触觉反馈按钮的功能) 如何使设置中的开关关闭时,功能停止工作 您可以将开关状态存储在UserDefaults中,然后在函数中检查它 在您的切换操作中: @IBAction func switchAction(sender: UISwitch) { if sender.isOn { UserDefaults.standard.set(true, forKey: "SwitchSta
您可以将开关状态存储在
UserDefaults
中,然后在函数中检查它
在您的切换操作中:
@IBAction func switchAction(sender: UISwitch) {
if sender.isOn {
UserDefaults.standard.set(true, forKey: "SwitchState")
} else {
UserDefaults.standard.set(false, forKey: "SwitchState")
}
}
在主VC功能中
@IBAction func Vib(_ sender: UIButton) {
guard UserDefaults.standard.bool(forKey: “SwitchState”) else { return }
let generator = UIImpactFeedbackGenerator(style: .light)
generator.impactOccurred()
}
不需要将布尔值与真值进行比较。你可以摆脱这个
==true
@FrancescoDeliro我的功能在使用你的代码时总是关闭的,并且总是打开开关。你的开关默认状态是?如果您将开关值更改为off,然后更改为on,请尝试打印UserDefaults Bool值。
@IBAction func Vib(_ sender: UIButton) {
guard UserDefaults.standard.bool(forKey: “SwitchState”) else { return }
let generator = UIImpactFeedbackGenerator(style: .light)
generator.impactOccurred()
}