可选类型String的值?没有打开

Ins*_*ane 12 ios swift

我只是无法解开else阻止.xCode给了我"修复它!和??"的选项,遗憾的是它也没有解决问题.我在xCode中遇到此错误:可选类型'String?'的值 没有打开; 你的意思是用!要么 ??

 @IBAction func buttonTapped(theButton: UIButton) {
    if answerField.text == "0" {
        answerField.text = theButton.titleLabel?.text
    } else {
        answerField.text  = answerField.text + theButton.titleLabel?.text
    }
Run Code Online (Sandbox Code Playgroud)

ZYi*_*iOS 17

因为theButton.titleLabel?.text它没有被打开.

您可以使用

 answerField.text  = answerField.text + (theButton.titleLabel?.text ?? "")
Run Code Online (Sandbox Code Playgroud)

要么

if answerField.text == "0" {
    answerField.text = theButton.titleLabel?.text
} else {
    if let txt = theButton.titleLabel?.text {
        answerField.text  = answerField.text + txt
    } else {
        answerField.text  = answerField.text
    }
}
Run Code Online (Sandbox Code Playgroud)