Como descartar um UIAlertController e o teclado simultaneamente?

Eu criei um formulário de inscrição com umUIAlertController e usou o métodoaddTextFieldWithConfigurationHandler para adicionar um campo de texto. Mas há um pequeno problema.

Quando o formulário aparece, o teclado e o modal aparecem com uma animação suave. Ao fechar o formulário, o modal desapareceprimeiroeentão o teclado desaparece. Isso faz com que o teclado faça uma queda repentina para baixo.

Como posso fazer com que o modal e o teclado desapareçam graciosamente?

lazy var alertController: UIAlertController = { [weak self] in
    let alert = UIAlertController(title: "Alert", message: "This is a demo alert", preferredStyle: .Alert)
    alert.addTextFieldWithConfigurationHandler { textField in
        textField.delegate = self
    }
    alert.addAction(UIAlertAction(title: "OK", style: .Default, handler: nil))
    return alert
}()

@IBAction func alert() {
    presentViewController(alertController, animated: true, completion: nil)
}

func textFieldShouldReturn(textField: UITextField) -> Bool {
    alertController.dismissViewControllerAnimated(true, completion: nil)
    return true
}

questionAnswers(8)

yourAnswerToTheQuestion