Important:UIAlertViewis deprecated in iOS 8. (Note thatUIAlertViewDelegateis also deprecated.) To create and manage alerts in iOS 8 and later,instead useUIAlertControllerwith apreferredStyleofUIAlertControllerStyleAlert.
在Xcode7中使用UIAlertView会报如下警告:
'UIAlertView'wasdeprecated iniOS9.0: UIAlertViewisdeprecated. UseUIAlertControllerwith apreferredStyleof UIAlertControllerStyleAlert instead
Alert Views :Alert views display a concise and informative alert message to the user.
UIAlertController同时替代了UIAlertView和UIActionSheet,从系统层级上统一了 alert 的概念 —— 即以 modal 方式或 popover 方式展示。
//ViewController.swift importUIKit classViewController:UIViewController{ overridefuncviewDidLoad(){ super.viewDidLoad() //Doanyadditionalsetupafterloadingtheview,typicallyfromanib. //创建一个Button letbutton=UIButton(type:UIButtonType.Custom)//初始化UIButton button.frame=CGRectMake(50,100,150,50)//创建一个CGRect,设置位置和大小 button.backgroundColor=UIColor.greenColor()//设置背景色 button.setTitle("点击显示弹窗",forState:UIControlState.Normal)//设置标题 //传递触摸对象(点击事件) button.addTarget(self,action:"buttonPressed:",forControlEvents:UIControlEvents.TouchUpInside) self.view.addSubview(button) } //Action funcbuttonPressed(sender:UIButton){ showAlertReset() } funcshowAlertDefault(){ letalertController=UIAlertController(title:"弹窗标题",message:"Hello,这个是UIAlertController的默认样式",preferredStyle:UIAlertControllerStyle.Alert) letcancelAction=UIAlertAction(title:"取消",style:UIAlertActionStyle.Cancel,handler:nil) letokAction=UIAlertAction(title:"好的",style:UIAlertActionStyle.Default,handler:nil) letresetAction=UIAlertAction(title:"重置",style:UIAlertActionStyle.Destructive,handler:nil) alertController.addAction(resetAction) alertController.addAction(cancelAction) alertController.addAction(okAction) self.presentViewController(alertController,animated:true,completion:nil) } funcshowAlertReset(){ letalertControl=UIAlertController(title:"弹窗的标题",showAlertReset",preferredStyle:UIAlertControllerStyle.Alert) letcancelAction=UIAlertAction(title:"取消操作",handler:nil) alertControl.addAction(cancelAction) alertControl.addAction(okAction) self.presentViewController(alertControl,completion:nil) } overridefuncdidReceiveMemoryWarning(){ super.didReceiveMemoryWarning() //DispoSEOfanyresourcesthatcanberecreated. } }
参考: