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;

        }];

    }

     

     
  • 相关阅读:
    mysql INNODB_TRX 事务表
    14.4.5 System Tablespace 系统表空间
    14.4.4 Redo Log Buffer
    14.4.3 Adaptive Hash Index 自适应hash index
    14.4.2 Change Buffer 延迟写
    14.4.1 Buffer Pool
    14.3 InnoDB Multi-Versioning InnoDB 多版本
    14.2 InnoDB and the ACID Model
    14.1.3 检查InnoDB 可用性:
    算法分类(写这个是为了让自己以后学算法的时候有针对性条理性)
  • 原文地址:https://www.cnblogs.com/zyj442714794/p/4593916.html
Copyright © 2011-2022 走看看