import UIKitclass ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() } override func touchesBegan(touches: Set , withEvent event: UIEvent?) { // 创建 let alertController = UIAlertController(title: "提示", message: "你确定要离开?", preferredStyle:.Alert) // 设置2个UIAlertAction let cancelAction = UIAlertAction(title: "取消", style: .Cancel, handler: nil) let okAction = UIAlertAction(title: "好的", style: .Default) { (UIAlertAction) in print("点击了好的") } // 添加 alertController.addAction(cancelAction) alertController.addAction(okAction) // 弹出 self.presentViewController(alertController, animated: true, completion: nil) } }
// 除了弹出,还可以使用底部向上滑出的样式 // 注意:如果上拉菜单中有『取消』按钮的话,那么它永远都会出现在菜单的底部,不管添加的次序如何 // 创建 // preferredStyle 为 ActionSheet let alertController = UIAlertController(title: "保存或删除数据", message: "删除数据将不可恢复", preferredStyle:.ActionSheet) // 设置2个UIAlertAction let cancelAction = UIAlertAction(title: "取消", style: .Cancel, handler: nil) let deleteAction = UIAlertAction(title: "删除", style: .Destructive, handler: nil) let saveAction = UIAlertAction(title: "保存", style: .Default, handler: nil) // 添加到UIAlertController alertController.addAction(cancelAction) alertController.addAction(saveAction) alertController.addAction(deleteAction) // 弹出 self.presentViewController(alertController, animated: true, completion: nil)
/* 添加任意数量的文本输入框(比如可以用来实现登录框) */ let alertController = UIAlertController(title: "系统登录", message: "请输入用户名和密码", preferredStyle: UIAlertControllerStyle.Alert) alertController.addTextFieldWithConfigurationHandler { (textField:UITextField) in textField.placeholder = "用户名" } alertController.addTextFieldWithConfigurationHandler { (textField:UITextField) in textField.placeholder = "密码" textField.secureTextEntry = true } let cancelAction = UIAlertAction(title: "取消", style: UIAlertActionStyle.Cancel, handler: nil) let okAction = UIAlertAction(title: "好的", style: UIAlertActionStyle.Default) { (UIAlertAction) in let login = alertController.textFields![0] let pwd = alertController.textFields![1] print("用户名:\(login.text) 密码:\(pwd.text)") } alertController.addAction(cancelAction) alertController.addAction(okAction) // 弹出 self.presentViewController(alertController, animated: true, completion: nil)