提示框的几种用法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/gongwutianya/article/details/51261333

一、UIActionSheet从底部弹出

UIActionSheet的代理协议<UIActionSheetDelegate>

-(void)clickButton{

    UIActionSheet * sheet = [[UIActionSheet alloc] initWithTitle:@"提示" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:@"确定" otherButtonTitles:nil];
    [sheet showInView:self.view];
    
}

//协议方法调用
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{
    
    NSLog(@"在此根据buttonIndex进行方法处理");
}


二、UIAlertView显示在屏幕中间

UIAlertView的代理协议<UIAlertViewDelegate>

-(void)clickButton{
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"提示内容" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:nil];
    [alert show];
    
}

//协议代理方法
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
    
    NSLog(@"在此根据buttonIndex进行方法处理");
    
}


三、UIAlertController不需要代理执行放在block里,有多种样式。
-(void)clickButton{

    UIAlertController * alert = [UIAlertController alertControllerWithTitle:@"提示" message:msg preferredStyle:UIAlertControllerStyleActionSheet];
    UIAlertAction * action = [UIAlertAction actionWithTitle:@"我知道了" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * _Nonnull action) {
        NSLog(@"alertController被调用");
    }];
    UIAlertAction * action2 = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
        NSLog(@"alertController调用取消操作");
    }];
    [alert addAction:action];
    [alert addAction:action2];
    [self presentViewController:alert animated:YES completion:nil];    
}




展开阅读全文

没有更多推荐了,返回首页