swift 創建自定義的Modal

本文的需求很簡單,就是在一個操作完成之后,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的背景顏色

freeform

如何調用

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){

}

最終的效果
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容