自定义弹出框Alter
原理就是创建一个透明的UIViewController
demo中是重新创建了一个storyboard,里面有一个自定义的UIViewController命名为:EasyAlert
class EasyAlert: UIViewController { static var ins:EasyAlert! override func viewDidLoad() { super.viewDidLoad() } static var instance:EasyAlert{ get{ if(ins == nil){ let sb = UIStoryboard(name: "Alert", bundle: nil) ins = sb.instantiateViewControllerWithIdentifier("EasyAlert") as! EasyAlert ins.view.backgroundColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.3) ins.modalPresentationStyle = .Custom //inc.modalPresentationStyle = UIModalPresentationStyle.OverCurrentContext; ins.modalPresentationStyle = .Custom } return ins } } @IBAction func close(sender: AnyObject) { dismissViewControllerAnimated(true, completion: { ()->Void in }) } override func viewWillAppear(animated: Bool) { super.viewWillAppear(animated) } }
在需要弹出框的时候,启动创建的storyboard:
@IBAction func showAlert(sender: AnyObject) { var alert = EasyAlert.instance presentViewController(alert, animated: true, completion: nil) }
效果:
I am not doing shit today !