Подтвердить что ты не робот

Как иметь цифровую панель в текстовом поле контроллера предупреждения [swift]

Я пытаюсь вызвать контроллер предупреждения, у которого есть текстовое поле. Но я хотел бы сразу показать номерную панель, так как пользователь должен вводить только цифры. Я пробовал со следующим, но это не работает.

let alert = UIAlertController(title: "New Rating", message: "Rate this!", preferredStyle: UIAlertControllerStyle.Alert)

  let cancelAction = UIAlertAction(title: "Cancel", style: .Default, handler: { (action: UIAlertAction!) in })

  let saveAction = UIAlertAction(title: "Save", style: .Default, handler: { (action: UIAlertAction!) in

    let textField = alert.textFields![0] as UITextField
    textField.keyboardType = UIKeyboardType.NumberPad

    self.updateRating(textField.text)
  })

  alert.addTextFieldWithConfigurationHandler { (textField: UITextField!) in }

  alert.addAction(cancelAction)
  alert.addAction(saveAction)

  self.presentViewController(alert, animated: true, completion: nil)
4b9b3361

Ответ 1

Нашел это сам! Это может быть полезно для кого-то другого.

alert.addTextField(configurationHandler: { textField in
    textField.keyboardType = .numberPad
})

Ответ 2

Swift 3:

alert.addTextField { (textField) in
    textField.keyboardType = .decimalPad
}