亚洲一区亚洲二区亚洲三区,国产成人高清在线,久久久精品成人免费看,999久久久免费精品国产牛牛,青草视频在线观看完整版,狠狠夜色午夜久久综合热91,日韩精品视频在线免费观看

Swift完成UIAlertController的調用 -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.ishadingyu.com - 電腦資料】

    iOS8中的UIAlertView和UIActionSheet已經都被UIAlertViewController代替了,所以,本篇blog就來探討下如何用swift生成提示框,

Swift完成UIAlertController的調用

。

    我們先來看一下Apple的UIAlertController的文檔:

   

import Foundationimport UIKit////  UIAlertController.h//  UIKit////  Copyright (c) 2014 Apple Inc. All rights reserved.//@availability(iOS, introduced=8.0)enum UIAlertActionStyle. Int {        case Default    case Cancel    case Destructive}@availability(iOS, introduced=8.0)enum UIAlertControllerStyle. Int {        case ActionSheet    case Alert}@availability(iOS, introduced=8.0)class UIAlertAction : NSObject, NSCopying {        convenience init(title: String, style. UIAlertActionStyle, handler: ((UIAlertAction!) ->Void)!)        var title: String { get }    var style. UIAlertActionStyle. { get }    var enabled: Bool}@availability(iOS, introduced=8.0)class UIAlertController : UIViewController {        convenience init(title: String?, message: String?, preferredStyle. UIAlertControllerStyle)        func addAction(action: UIAlertAction)    var actions: [AnyObject] { get }    func addTextFieldWithConfigurationHandler(configurationHandler: ((UITextField!) ->Void)!)    var textFields: [AnyObject]? { get }        var title: String?    var message: String?        var preferredStyle. UIAlertControllerStyle. { get }}

    我們可以看到UIAlertController的style有兩個,一個是ActionSheet,一個是Alert,而AlertActionStyle有3個: Default,Cancel, Destructive;所以我們新建Alert時可以這樣:

   

var alert: UIAlertController = UIAlertController(title:nil, message:"您輸入的電話號碼有誤,請檢查后重新輸入",                preferredStyle.:UIAlertControllerStyle.Alert)

    或者

   

var alert: UIAlertController = UIAlertController(title: nil, message:"test", preferredStyle. UIAlertControllerStyle.ActionSheet)

接下來我們來給Alert添加action,從文檔中可以看到AlertAction有init函數(shù),

    我們來新建3個actions

   

var saveAction = UIAlertAction(title: "Save", style. .Default, handler:{                    (alerts: UIAlertAction!) ->Void in                    println("File saved")                })                var deleteAction = UIAlertAction(title: "Delete", style. .Default, handler:{                    (alerts: UIAlertAction!) ->Void in                    println("File delete")                })                var cancelAction = UIAlertAction(title: "Cancel", style. .Cancel, handler:{                    (alerts: UIAlertAction!) ->Void in                    println("Cancelled")                })
注意到handler中用到了一個closure

    然后給我們的alertcontroller添加actions,并把它顯示出來

   

alert.addAction(saveAction)                alert.addAction(deleteAction)                alert.addAction(cancelAction)                                self.presentViewController(alert, animated: true, completion: nil)

    我們也可以這樣添加action

   

alert.addAction(UIAlertAction(title: "確定", style. .Destructive, handler: {                action in switch action.style{                case .Default:                    println("ok")                case .Cancel:                    println("cancel")                case .Destructive:                    println("Destructive")                    }                }            ))
接下來運行一下看看我們的alertController是什么樣子的吧,

電腦資料

Swift完成UIAlertController的調用》(http://www.ishadingyu.com)。

    Tips:

    如果style是cancel 那么字體會變粗;如果是destructive,字體會顯示紅色。

最新文章