Xcode에서 2 개의 숫자를 곱하기를 요구하는 응용 프로그램을 만든 다음 텍스트 필드에 입력하고 대답이 맞으면 회색 버튼이 표시됩니다 파란색으로 변합니다.UITextField 입력이 작동하지 않습니다.
문제는 작동하지 않는 응용 프로그램을 테스트하는 동안 내 대답을 확신 할지라도 작동하지 않을 것입니다. 버튼은 회색으로 유지되고 응용 프로그램은 대답이 잘못되었다고 생각합니다. 아무도 도와주지 말고 말해주십시오. 내 코드가 뭐가 잘못 됐어!
var firstNumber = arc4random()
var secondNumber = arc4random()
@IBOutlet weak var AnswerButton: UIButton!
@IBOutlet weak var OutcomeNumber: UILabel!
@IBOutlet weak var textField: UITextField!
@IBAction func textFieldEditingDidChange(_ sender: Any) {
print("textField: \(textField.text)")
if ValidatePassword(text: textField.text!) {
AnswerButton.isEnabled = true
} else {
AnswerButton.isEnabled = false
}
}
@IBAction func AnswerButtonPressed(_ sender: Any) {
print("you may enter")
view.backgroundColor = UIColor.green
}
func ValidatePassword(text: String) -> Bool {
var result = false
if text == ("(\(firstNumber*secondNumber))") {
result = true
}
return result
}
@IBAction func GObutton(_ sender: Any) {
OutcomeNumber.text = "\(firstNumber)×\(secondNumber)"
firstNumber = arc4random_uniform(10)
secondNumber = arc4random_uniform(10)
}
@IBAction func GoMedium(_ sender: Any) {
OutcomeNumber.text = "\(firstNumber)×\(secondNumber)"
firstNumber = arc4random_uniform(50)
secondNumber = arc4random_uniform(50)
}
@IBAction func GoHard(_ sender: Any) {
OutcomeNumber.text = "\(firstNumber)×\(secondNumber)"
firstNumber = arc4random_uniform(100)
secondNumber = arc4random_uniform(100)
}
override func viewDidLoad() {
super.viewDidLoad()
AnswerButton.isEnabled = false
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
내가 공간 아무것도하지만이 변경 제거했는데, 내가 정규식을 사용 어떻게, 미안, 엑스 코드에 새로운 메신저 대단히 감사합니다. –
놀이터에서 예제를 추가하고 완벽하게 작동합니다. '정규식 '에 대해 배우려면 https://regexone.com – mhergon