사용자가 텍스트 프레임에서 잘못된 형식을 입력하면 응용 프로그램이 충돌합니다. 어떻게하면 1) 키보드가 올바른 유형인지 (내 경우 숫자 키보드) 2) 틀린 형식을 입력하면 응용 프로그램이 충돌하지 않도록 만들 수 있습니까? 다음은이 버튼에 대한 내 코드입니다 :Swift에서 입력 형식이 올바르게 지정되는지 확인하는 방법
@IBAction func resetDistanceWalkedGoalButton(sender: AnyObject) {
var distanceWalkedAlert = UIAlertController(title: "Distance Walked", message: "Current Goal: \(distanceWalkedGoal) miles – Enter a new goal. (e.g. '1.75')", preferredStyle: UIAlertControllerStyle.Alert)
distanceWalkedAlert.addTextFieldWithConfigurationHandler {
(textField) in
}
distanceWalkedAlert.addAction(UIAlertAction(title: "Submit", style: .Default, handler: {
(action) in
let textW = distanceWalkedAlert.textFields![0] as UITextField
print(textW)
textW.keyboardType = UIKeyboardType.NumberPad
let distanceWalkedGoalFromAlert = Double(textW.text!)
distanceWalkedGoal = distanceWalkedGoalFromAlert!
print(distanceWalkedGoal)
self.distanceWalkedGoalNumber.text = "\(distanceWalkedGoal)"
}))
distanceWalkedAlert.addAction(UIAlertAction(title: "Cancel", style: .Default, handler: {
(action) in
self.dismissViewControllerAnimated(true, completion: nil)
}))
self.presentViewController(distanceWalkedAlert, animated: true, completion: nil)
}