我最近一直在学习使用 xCode 编写 Swift 代码。我创建了一个简单的 Storyboard,并尝试比较文本字段内的文本字段值。
这是我的代码:
var numberone = 0
var numbertwo = 0
var answerstring :String = ""
var answerint :Int = 0
var userInput :String = ""
@IBAction func userTextField(_ sender: UITextField) {
numberone = randomInt(min: 1, max: 9)
numbertwo = randomInt(min: 1, max: 9)
questionLabel.text = "\(numberone) + \(numbertwo)"
answerint = numberone + numbertwo
answerstring = "\(answerint)"
if userTextField.text! = "\(answerstring)" {
questionResponse.text! = "Correct!"
} else {
questionResponse.text! = "Incorrect. The answer was \(answerint)."
}
错误出现在 userTextField.text! 上,它显示:
类型“(UITextField) -> ()”的值没有成员“text”
最佳答案
您正在比较userTextField
,它是方法名称,它应该是sender
:
@IBAction func userTextField(_ sender: UITextField) {
numberone = randomInt(min: 1, max: 9)
numbertwo = randomInt(min: 1, max: 9)
questionLabel.text = "\(numberone) + \(numbertwo)"
answerint = numberone + numbertwo
answerstring = "\(answerint)"
// here is the change, 'sender' instead of 'userTextField':
if sender.text! = "\(answerstring)" {
questionResponse.text! = "Correct!"
} else {
questionResponse.text! = "Incorrect. The answer was \(answerint)."
}
}
关于swift - 如何比较文本字段内的文本字段值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40705642/