我有这个函数,它获得一个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值一样,它会输出正确的值。
感谢任何帮助。
答案 0 :(得分:1)
viewWithTag
可能无法获得您想要的视图。你可以尝试使用for循环。
for view in self.view.subviews {
if let tagToSwitch = view as? UISwitch {
if tagToSwitch.tag == sender.tag {
tagToSwitch.setOn(true, animated: true)
}
}
}