J'essaye de montrer un UIAlertControlleravec un UITextView. Quand j'ajoute la ligne:
//Add text field
alertController.addTextFieldWithConfigurationHandler { (textField) -> Void in
}
J'obtiens une Runtimeerreur:
erreur fatale: inopinément trouvé nul lors du déballage d'une valeur facultative
let alertController: UIAlertController = UIAlertController(title: "Find image", message: "Search for image", preferredStyle: .Alert)
//cancel button
let cancelAction: UIAlertAction = UIAlertAction(title: "Cancel", style: .Cancel) { action -> Void in
//cancel code
}
alertController.addAction(cancelAction)
//Create an optional action
let nextAction: UIAlertAction = UIAlertAction(title: "Search", style: .Default) { action -> Void in
let text = (alertController.textFields?.first as! UITextField).text
println("You entered \(text)")
}
alertController.addAction(nextAction)
//Add text field
alertController.addTextFieldWithConfigurationHandler { (textField) -> Void in
textField.textColor = UIColor.greenColor()
}
//Present the AlertController
presentViewController(alertController, animated: true, completion: nil)
Ceci est présenté dans mon ViewControllervia un fichier IBAction.
J'ai téléchargé le code à partir d' ici et cela fonctionne très bien. J'ai copié et collé cette méthode dans mon code et ça casse. La présence de soi sur la dernière ligne n'a aucun impact.
UITextField, plutôt queUITextView?