class ViewController: UIViewController {
@IBOutlet weak var label: UILabel!
var userIsInTheMiddleOfTypingNumber: Bool = false
@IBAction func appendDigit(sender: UIButton) {
let digit = sender.currentTitle!
if (userIsInTheMiddleOfTypingNumber) {
label.text = label.text! + digit
}
else {
label.text = digit
userIsInTheMiddleOfTypingNumber = true
}
}
}
我目前正在创建一个计算器应用。出于某种原因,当我运行模拟器并尝试输入一些数字时,siumulator冻结,并且bad_instruction的错误出现在该行上:
label.text = digit
我该如何解决这种情况?
答案 0 :(得分:1)
您似乎忘记将故事板中的标签与插座连接。
答案 1 :(得分:1)
看起来currentTitle
属性为nil
会导致崩溃。你没有进行任何nil
检查就强行打开财产。
@IBAction func appendDigit(sender: UIButton) {
if let digit = sender.currentTitle {
if (userIsInTheMiddleOfTypingNumber) {
label.text = label.text! + digit
}
else {
label.text = digit
userIsInTheMiddleOfTypingNumber = true
}
}
}
OR
这可能是@dasdom
指定的原因