微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Swift - 告警提示框UIAlertController的用法

自iOS8起,苹果就建议告警框使用UIAlertController来代替UIAlertView。下面总结了一些常见的用法

1,简单的应用(同时按钮响应Handler使用闭包函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import UIKit
class ViewController : UIViewController , UIActionSheetDelegate {
override func viewDidLoad() {
super .viewDidLoad()
}
viewDidAppear(animated: Bool ){
.viewDidAppear(animated)
let alertController = UIAlertController (title: "系统提示" ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,
message: "您确定要离开hangge.com吗?" ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,preferredStyle: UIAlertControllerStyle . Alert )
cancelAction = UIAlertAction "取消" ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,style: UIAlertActionStyle Cancel ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,handler: nil )
okAction = "好的" Default ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,
handler: {
action in
print ( "点击了确定" )
})
alertController.addAction(cancelAction)
alertController.addAction(okAction)
self .presentViewController(alertController,animated: true ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,completion: )
}
didReceiveMemoryWarning() {
.didReceiveMemoryWarning()
// dispose of any resources that can be recreated.
}
}

2,除了弹出,还可以使用从底部向上滑出的样式
(注意:如果上拉菜单中有“取消”按钮的话,那么它永远都会出现在菜单底部,不管添加的次序是如何)
1
2
9
var alertController = UIAlertController "保存或删除数据" ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,message: "删除数据将不可恢复" ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,
preferredStyle: UIAlertControllerStyle ActionSheet )
cancelAction = UIAlertAction )
deleteAction = "删除" ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,style: UIAlertActionStyle Destructive )
archiveAction = "保存" )
alertController.addAction(cancelAction)
alertController.addAction(deleteAction)
alertController.addAction(archiveAction)
)

3,按钮使用“告警”样式(文字颜色变红,用来来警示用户
1
)

4,添加任意数量文本输入框(比如可以用来实现个登陆框)
12
13
14
15
16
17
18
19
20
21
25
26
27
28
29
@H_195_404@ 30
31
32
33
34
35
36
37
38
import UIKit
ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:0px 1em!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; min-height:auto!important; background:none rgb(249, UIActionSheetDelegate viewDidAppear(animated: Bool "系统登录" "请输入用户名密码" )
alertController.addTextFieldWithConfigurationHandler {
(textField: UITextField !) -> Void in
textField.placeholder = "用户名"
}
alertController.addTextFieldWithConfigurationHandler {
in
textField.secureTextEntry = true
}
)
okAction = ottom:auto!important; float:none!important; height:auto!important; left:auto!important; line-height:1.5em!important; margin:0px!important; overflow:visible!important; padding:1px 0px!important; position:static!important; right:auto!important; top:auto!important; vertical-align:baseline!important; width:auto!important; font-family:Consolas,
handler: {
in
login = alertController.textFields!.first! as UITextField
password = alertController.textFields!.last! as UITextField
"用户名:\(login.text) 密码:\(password.text)" )
})
alertController.addAction(cancelAction)
alertController.addAction(okAction)
)
}
didReceiveMemoryWarning() {
.didReceiveMemoryWarning()
}
}

5,使用代码移除提示
.presentedViewController?.dismissViewControllerAnimated(false)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐