Я вызываю код ниже, используя пункт «Добавить панель», где я представляю предупреждение, запрашивающее ввод пользователя. Он отлично работает в первый раз, и дать следующее сообщение об ошибке там после того, как:Ошибка UIAlertController
Код:
var alert = UIAlertController(title: "Enter Blog Link", message: nil, preferredStyle: .Alert)
func userBlogLinkEntryPopover() {
// let alert = UIAlertView(title: "Enter Blog Link", message: nil, delegate: self, cancelButtonTitle: "Cancel")
alert.addTextFieldWithConfigurationHandler { (textField) -> Void in
textField.placeholder = "Enter Blog URL!"
}
alert.addAction(UIAlertAction(title: "Ok", style: .Default, handler: { (action) -> Void in
if let tf = self.alert.textFields?.first as? UITextField{
println(tf.text)
}
}))
alert.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: nil))
presentViewController(alert, animated: true, completion: nil)
}
Ошибка: «UIAlertController может иметь только одно действие с стиле UIAlertActionStyleCancel»
Я думаю, что он пытается добавить действие каждый раз, когда нажата кнопка добавления и, следовательно, ошибка. Пожалуйста, поправьте меня, если я ошибаюсь, а также предложите работу.
Благодарим за помощь.
Почему вы перевели декларацию 'var alert' из функции' userBlogLinkEntryPopover'? Верните его туда. Предупреждение не должно быть собственностью. – matt