当按下按钮上的标签值时,发现致命的“错误:意外地发现零,同时展开可选值”按
问题描述:
当我按下按钮时,我总是得到零值。当按下按钮上的标签值时,发现致命的“错误:意外地发现零,同时展开可选值”按
import UIKit
class ViewController: UIViewController {
//MARK: Properties
@IBOutlet weak var txt_vrednost: UITextField!
@IBOutlet weak var btn_dodaj: UIButton!
@IBOutlet weak var lbl_stanje: UILabel!
var novcanik = 0.0
//MARK: Acttion
@IBAction func btn_dodaj_pressed(_ sender: Any) {
let values = Double(txt_vrednost.text!)
novcanik = novcanik + values!
lbl_stanje.text=String(novcanik)
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
}
答
首先确保您的所有插座都与故事板连接。你正在使用武力解开到处,这是导致崩溃:
import UIKit
class ViewController: UIViewController {
//MARK: Properties
@IBOutlet weak var txt_vrednost: UITextField!
@IBOutlet weak var btn_dodaj: UIButton!
@IBOutlet weak var lbl_stanje: UILabel!
var novcanik = 0.0
//MARK: Action
@IBAction func btn_dodaj_pressed(_ sender: Any) {
guard let values = txt_vrednost.text as? Double else {
print("not convertible")
return
}
novcanik = novcanik + values
lbl_stanje.text = "\(novcanik)"
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
}
你期望发生什么? – Wez
'txt_vrednost.text'不能转换为Double,所以失败。提供回退值,不要强行解包。 – the4kman