IOS开发之UIAlertController

IOS8中,苹果推出了UIAlertController替代Alert ViewsAction Sheets,并且苹果不推荐在IOS8之后再使用Alert ViewsAction Sheets

使用步骤:

  • 初始化UIAlertController,同时制定样式是Alert还是ActionSheet
  • 创建一个动作
  • 把动作添加到控制器中
  • 推出UIAlertController

代码示范,创建Alert对话框:

    // 初始化UIAlertController控制器
    let alertVC = UIAlertController(title: "Welcome to my first App", message: "Hello World", preferredStyle: UIAlertControllerStyle.Alert)
    // 创建动作
    let action = UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: nil)
    // 添加动作
    alertVC.addAction(action)
    // 推出UIAlertController控制器
    presentViewController(alertVC, animated: true, completion: nil)

preferredStyle属性取值:

  • Alert
    这里写图片描述
  • ActionSheet
    这里写图片描述

UIAlertAction中Style属性取值:

  • Default 默认样式,对话框中OK字体显示蓝色
  • Cancel 对话框中OK字体显示蓝色
  • Destructive 对话框中OK字体显示红色

当按钮被点击触发响应的时候,可以在handler闭包中添加响应内容:

let action = UIAlertAction(title: "OK", style: UIAlertActionStyle.Default) { (action) -> Void in
    print("我被点击了!!")
}

一个UIAlertController可以添加多个Action,我们可以通过actions数组属性获取到UIAlertController中的所有动作,actions是一个get属性。

action中有一个属性enable可以控制此按钮是否可以点击,title属性可以设置按钮的显示标题

UIAlertController除了可以添加响应动作,还可以添加textField文本输入框:

alertVC.addTextFieldWithConfigurationHandler { (textField) -> Void in
   textField.placeholder = "Login"
}
alertVC.addTextFieldWithConfigurationHandler { (textField) -> Void in
   textField.placeholder = "Password"
}

效果如图:
这里写图片描述

actions数组可以获取action一样,textfields数组可以获取控制器中的textfield这个数组返回的是一个可选值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值