Swift: 使用相同标签点击按钮时更改 UISwitch 状态
Swift: Change UISwitch status when a button is clicked on with the same tag
我有这个函数,它获取一个 UISwitch,其标签值与触发该函数的按钮相同,然后将 UISwitch 的状态更改为 true:
let tagToSwitch = self.view.viewWithTag(sender.tag) as? UISwitch
tagToSwitch?.setOn(true, animated: true)
但是这不起作用,如果我更改 tagToSwitch!
应用程序崩溃并返回错误 'fatal error: unexpectedly found nil while unwrapping an Optional value'
虽然我不确定打印时哪里出错了在此之前的 sender.tag 值,它会打印正确的值。
感谢任何帮助。
viewWithTag
可能无法获得您想要的视图。您可以尝试使用 for 循环。
for view in self.view.subviews {
if let tagToSwitch = view as? UISwitch {
if tagToSwitch.tag == sender.tag {
tagToSwitch.setOn(true, animated: true)
}
}
}
我有这个函数,它获取一个 UISwitch,其标签值与触发该函数的按钮相同,然后将 UISwitch 的状态更改为 true:
let tagToSwitch = self.view.viewWithTag(sender.tag) as? UISwitch
tagToSwitch?.setOn(true, animated: true)
但是这不起作用,如果我更改 tagToSwitch!
应用程序崩溃并返回错误 'fatal error: unexpectedly found nil while unwrapping an Optional value'
虽然我不确定打印时哪里出错了在此之前的 sender.tag 值,它会打印正确的值。
感谢任何帮助。
viewWithTag
可能无法获得您想要的视图。您可以尝试使用 for 循环。
for view in self.view.subviews {
if let tagToSwitch = view as? UISwitch {
if tagToSwitch.tag == sender.tag {
tagToSwitch.setOn(true, animated: true)
}
}
}