2015-10-27 3 views
0

У меня есть UIAlertController с полем ввода. Я хочу проверить, не пустое ли это поле и если текст поля - номер. Но я не понимаю, как показывать сообщение проверки в окне предупреждения.Проверка правильности поля в UIAlertController

var inputTextField: UITextField? 

     let actionSheetController: UIAlertController = UIAlertController(title: "Enter price", message: "", preferredStyle: .Alert) 

     let nextAction: UIAlertAction = UIAlertAction(title: "Continiue", style: .Default) { action -> Void in 
      let priceField = actionSheetController.textFields![0] as UITextField 
      if let userPrice = priceField.text { 
       if userPrice == "" { 
        //RETURN AND SHOW SHOW ERROR MESSAGE, BUT KEEP ALERT OPEN 
       } 
} 
} 
     actionSheetController.addAction(nextAction) 

     actionSheetController.addTextFieldWithConfigurationHandler { textField -> Void in 
      inputTextField = textField 
      inputTextField!.placeholder = "Product price" 
     } 
     self.presentViewController(actionSheetController, animated: true, completion: nil) 
+0

Вы спрашивали, как сделать проверку? или как показывать предупреждение? Потому что название ваших вопросов отличается от названия вашего тела. –

+0

нет, я имею в виду, как отображать ошибку при завершении проверки и не закрывать окно предупреждения – Arti

ответ

0

Для проверки, является ли строка десятичного числа:

let nonDigits = NSCharacterSet.decimalDigitCharacterSet().invertedSet 
let isValidNumber : Bool = priceField.text?.rangeOfCharacterFromSet(nonDigits) == nil 
+0

Я знаю, как проверить, я хочу, чтобы это поле было обязательным и не закрывало предупреждение, если это не так. – Arti

+0

Почему вы не можете используйте 'UITextFieldKeyboardNumberPad' для' inputTextField'? – Nishant

+0

, но как проверить, если он пуст? Проблема: когда я нажимаю ok, мое окно закрывается в каждом случае – Arti

Смежные вопросы