从Swift中的iOS alert中的TextField获取input值

我正在尝试使用input发出警报消息,然后从input中获取值。 我发现很多好的教程如何使input文本字段。 但我无法从警报中获得价值。

更新了Swift 3及以上版本:

//1. Create the alert controller. let alert = UIAlertController(title: "Some Title", message: "Enter a text", preferredStyle: .alert) //2. Add the text field. You can configure it however you need. alert.addTextField { (textField) in textField.text = "Some default text" } // 3. Grab the value from the text field, and print it when the user clicks OK. alert.addAction(UIAlertAction(title: "OK", style: .default, handler: { [weak alert] (_) in let textField = alert.textFields![0] // Force unwrapping because we know it exists. print("Text field: \(textField.text)") })) // 4. Present the alert. self.present(alert, animated: true, completion: nil) 

Swift 2.x

假设您想要iOS上的操作警报:

 //1. Create the alert controller. var alert = UIAlertController(title: "Some Title", message: "Enter a text", preferredStyle: .Alert) //2. Add the text field. You can configure it however you need. alert.addTextFieldWithConfigurationHandler({ (textField) -> Void in textField.text = "Some default text." }) //3. Grab the value from the text field, and print it when the user clicks OK. alert.addAction(UIAlertAction(title: "OK", style: .Default, handler: { [weak alert] (action) -> Void in let textField = alert.textFields![0] as UITextField println("Text field: \(textField.text)") })) // 4. Present the alert. self.presentViewController(alert, animated: true, completion: nil)