本文的需求很简单,就是在一个操作完成之后,popup出一个modal来提醒用户操作用没有成功,本来有想过使用AlterViewController,但是发现功能比较有限,所以干脆就自己写了一个UIViewController来实现,本文参考的也是本站里面APP上,点击收藏只有会弹出一个提示对话框,然后自动消失。
创建xib文件
记得创建size类型为:freeform。然后xib里面有放入了两个view:一个是logo view,还有一个lable用来显示提示信息
self.settingTextView.textAlignment= .Center// 文字始终居中对齐
self.settingTextView.textColor=UIColor.whiteColor()// 字体的颜色
self.view.backgroundColor=UIColor.blackColor()//modal的背景颜色
如何调用
let alterView =DefaultSettingController()//初始化这个controller
alterView.message= message//给lable view进行赋值
alterView.modalPresentationStyle= .FormSheet//设置
alterView.preferredContentSize=CGSize(width:300, height:100)//自定义大小
alterView.view.superview?.center=self.view.center
alterView.view.layer.cornerRadius=5
alterView.view.layer.masksToBounds=true
self.presentViewController(alterView, animated:false, completion:nil)
lettime:NSTimeInterval=1.0//延迟之后自动消失
letdelay =dispatch_time(DISPATCH_TIME_NOW, Int64(time *Double(NSEC_PER_SEC)))
dispatch_after(delay,dispatch_get_main_queue()) {
alterView.dismissViewControllerAnimated(false){
}