UIAlertController的使用

原创 2015年11月18日 17:56:02
从iOS8开始,UIAlertView和UIActionSheet都不再推荐了,应该开始使用一个新的API,UIAlertController
UIAlertController继承自UIViewController,所以显示的方法不是show,而是普通的present。另外,如果程序用了这个API,那么在iOS7上会导致crash,所以需要版本兼容
Objc代码  收藏代码
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"title" message:@"message" preferredStyle:UIAlertControllerStyleAlert];  
                                  
UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:nil];  
                                  
UIAlertAction *confirm = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action){  
    [mainViewDelegate doBackupWithTag:BACKUP_STATISTICS_TAG_CONFIRM];  
}];  
                                  
[alert addAction:cancel];  
[alert addAction:confirm];  
[self presentViewController:alert animated:YES completion:nil];  


可以看到,最大的区别,是UIAlertController不再使用delegate的方式来触发回调,而是直接传一个block
delegate和block并没有本质区别,只是触发回调的不同方式而已,解决的都是“在未来的某个时间,调用我”的问题。delegate的复用性更好一点,创建一个delegate实例之后,可以把它设置为多个控件的delegate,减少了重复。block的优势是更加直观,阅读起来更容易,因为代码都在一处,不需要跳来跳去地读代码
但是现在既然苹果官方使用block的频率越来越高,或许这也代表了一种趋势
版权声明:本文为博主原创文章,未经博主允许不得转载。

IOS8新特性之——UIAlertController的使用

iOS新特性主要体现在UI方面,也是需要掌握的,苹果希望开发人员使用统一的方法,对各种型号的都能使用。首先体现在以下几个方面: 1. UIAlertController 2. UIPresentati...
  • u013087513
  • u013087513
  • 2016年01月24日 18:30
  • 1388

最全的UIAlertController的使用

iOS 8的新特性之一就是让接口更有适应性、更灵活,因此许多视图控制器的实现方式发生了巨大的变化。全新的UIPresentationController在实现视图控制器间的过渡动画效果和自适应设备尺寸...
  • iOSbird
  • iOSbird
  • 2015年12月30日 08:42
  • 18677

UIAlertController高级之嵌入其他控件

在编码过程中,我们经常遇到需要这样一个效果,就是弹出框的嵌套; 举个最简单的例子,比如你要选择时间,必然需要一个时间选择器DatePicker.但是这个选择器又是在你点击某按钮时弹出,弹出方式最常见的...
  • q644419002
  • q644419002
  • 2015年02月02日 11:58
  • 1277

iOS开发:使用UIAlertController的各种姿势

原文 UIAlertController Changes in iOS 8 作者 kharrison 译者 星夜暮晨(QQ:412027805) iOS 8的新特性之一就是让接口...
  • jijiji000111
  • jijiji000111
  • 2016年09月08日 15:11
  • 406

UIAlertController的使用及其自定义

UIAlertController的正常用法 // 上传 - (void)btnClick{     /* preferredStyle有且只有这两种枚举类型      *     UIAle...
  • yejiexiaobai
  • yejiexiaobai
  • 2016年11月01日 13:56
  • 4202

iOS复习 获取Tabbar的item 用UIAlertController修改英雄名称并刷新表格

视图间切换时调用:
  • ridxmc
  • ridxmc
  • 2016年08月03日 10:51
  • 436

含文本框的提示框的使用->UIAlertController类的使用(用户登录界面实例)

在掌握了提示框的使用后,可以向提示框中添加文本框,构成类似登录界面一样的弹出式提示登录窗口,注意仅限于提示框样式,下拉菜单样式不能使用 在上一篇文章(提示框的使用->UIAlertController...
  • qq_14920635
  • qq_14920635
  • 2015年12月29日 00:05
  • 1125

UIAlertController更改内容样式及插入自定义View

iOS8 之后系统把UIActionSheet和UIAlertView合并为了UIAlertController,使用就不比多说了,但在使用的过程中发现样式是固定的,点进去也未发现可以提供更改多样式的...
  • sdsd13212
  • sdsd13212
  • 2016年10月07日 14:34
  • 3207

iOS开发 自定义UIAlertController的样式

字数595 阅读26 评论0 喜欢0 引言: 关于提示框, 系统自带的提示框有时可能满足不了我们的需求, 比如一个提示框的取消按钮我需要灰色字体显示, 这时候就需要自定义提示框的样...
  • guojiezhi
  • guojiezhi
  • 2016年07月05日 17:12
  • 4183

IOS使用UIAlertController三种显示提示框代码

UIAlertView在IOS 8以上版本已经过时了,官方推荐我们使用UIAlertController代替UIAlertView、UIActionSheet 1、UIAlertController显...
  • deng0zhaotai
  • deng0zhaotai
  • 2017年01月02日 20:25
  • 5003
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UIAlertController的使用
举报原因:
原因补充:

(最多只允许输入30个字)