我对uiswitch有疑问。当应用程序第一次运行时,我需要知道uiswitch是打开还是关闭。 我试过这段代码:
@IBOutlet weak var switch1: UISwitch!
override func viewDidLoad() {
super.viewDidLoad()
if switch1.on {
print("Switch is on")
}
else {
print("Switch is off")
}
}
但每次我都会收到此错误:
fatal error: unexpectedly found nil while unwrapping an Optional value
如何解开uiswitch而不会出现错误?
答案 0 :(得分:1)
可能是您的switch1未连接到故事板或xib中的UISwitch。
if let switch = switch1 {
if switch.on {
print("switch is on")
} else {
print("switch is off")
}
} else {
println("Where's the switch")
}
答案 1 :(得分:1)
你必须打电话给超级。所有IBOutlet都是隐式解包的可选项。直到nil
被调用为awakeFronNib
。如果您在此之前尝试访问其中一个,则会出现例外情况
还要确认交换机的插座已连接。
override func viewDidLoad() {
super.viewDidLoad()
if switch1.on {
print("Switch is on")
}
else {
print("Switch is off"
}
}