zoukankan      html  css  js  c++  java
  • AlertView的三种弹窗模式

    #pragma mark 方法1

    /**

     *  用在IOS7,用到了代理

     */

    - (void)use1

    {

        // 1.创建一个中间弹框,有取消确定按钮,设置代理为当前控制器,由控制器监听点击了“取消”还是“确定”按钮

        UIAlertView *alert = [[UIAlertView allocinitWithTitle:@"提示" message:@"点击了图片按钮" delegate:selfcancelButtonTitle:@"取消" otherButtonTitles:@"确定"nil];

        

        // 2.显示在屏幕上

        [alert show];

    }

    #pragma mark 监听方式1中出现的弹框中的按钮点击,控制器来监听点击了取消还是确定按钮

    - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex

    {

        // 默认取消按钮索引为0

        if (buttonIndex == 0NSLog(@"点击了取消按钮");

        else NSLog(@"点击了确定按钮");

    }

     

     

     

    #pragma mark 方法2

    /**

     *  用在IOS8,没有代理。点击按钮时要执行的操作放在了block中,因此不需要设置代理

     */

    - (void)use2

    {

        // 1.创建弹框控制器, UIAlertControllerStyleAlert这个样式代表弹框显示在屏幕中央

        UIAlertController *alertVc = [UIAlertController alertControllerWithTitle:@"提示" message:@"点击了头像"preferredStyle:UIAlertControllerStyleAlert];

     

        // 2.添加取消按钮,block中存放点击了取消按钮要执行的操作

       UIAlertAction *cancle = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction*action) {

            NSLog(@"点击了取消按钮");

        }];

        UIAlertAction *confirm = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction*action) {

            NSLog(@"点击了确定按钮");

        }];

        // 3.取消确定按钮加入到弹框控制器中

        [alertVc addAction:cancle];

        [alertVc addAction:confirm];

        

        // 4.控制器 展示弹框控件,完成时不做操作

        [self presentViewController:alertVc animated:YES completion:^{

            nil;

        }];

    }

     

     

     

     

    #pragma mark 方法3

    /**

     *  用在IOS8,没有用到代理。跟方式2唯一不同的是:弹框的样式变为“UIAlertControllerStyleActionSheet”, 弹框出现在屏幕底部

     */

    - (void)use3

    {

        UIAlertController *alertVc = [UIAlertController alertControllerWithTitle:@"提示" message:@"点击了头像"preferredStyle:UIAlertControllerStyleActionSheet];

        UIAlertAction *cancle = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction*action) {

            NSLog(@"点击了取消");

        }];

        UIAlertAction *confirm = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction*action) {

            NSLog(@"点击了确定按钮");

        }];

        [alertVc addAction:cancle];

        [alertVc addAction:confirm];

        

        [self presentViewController:alertVc animated:YES completion:^{

            nil;

        }];

    }

     

     
  • 相关阅读:
    工作日时间,每10分钟执行一次磁盘空间检查,一旦发现任何分区利用率高 于80%,就发送邮件报警
    编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"
    显示统计占用系统内存最多的进程,并排序
    总结IP配置方法
    总结ip分类以及每个分类可以分配的IP数量
    总结描述TCP三次握手四次挥手
    描述TCP和UDP区别
    简述osi七层模型和TCP/IP五层模型
    创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小 为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录
    【转载】Centos升级gcc至5.4.0
  • 原文地址:https://www.cnblogs.com/zyj442714794/p/4593916.html
Copyright © 2011-2022 走看看