一、UIActionSheet,使用的很少,可以添加多个按钮,iOS8.3之后被弃用了,使用方式如下:
// 创建alert
-(void)createAlert{
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"哈哈哈" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"第一个按钮",@"第二个按钮",nil];//按钮显示可以设置多个按钮显示
actionSheet.actionSheetStyle = UIActionSheetStyleBlackOpaque;//设置样式
[actionSheet showInView:self.view];
}
// 点击的代理方法
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{
if (buttonIndex == 0) {
}else if(buttonIndex== 1) {
}else if(buttonIndex == 2) {
}
}
二、UIAlertView,这种方式也可以添加多个按钮,但是通常只用确定和取消两个按钮,iOS9.0之后被废弃的,使用之前我们要导入一个协议才可以
<UIActionSheetDelegate>,使用方法如下:
// 创建alert
- (void)createAlert
{
UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"提示内容" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil];
[alert show];
}
// 点击的代理方法
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{//点击弹窗按钮后
if (buttonIndex == 0) {//取消
} else if (buttonIndex == 1){//确定
}
}
三、UIAlertController,使用方法如下:
- (void)createAlert
{
UIAlertController * alert = [UIAlertController alertControllerWithTitle:@"提示" message:@"提示内容" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction * cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:nil];
UIAlertAction * sureAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
// 确定的方法
}];
// UIAlertAction * refuseAction = [UIAlertAction actionWithTitle:@"残忍拒绝" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * _Nonnull action) {
// // 红色残忍拒绝的方法
//
// }];
[alert addAction:cancelAction];
[alert addAction:sureAction];
// [alert addAction:refuseAction];
[self presentViewController:alert animated:YES completion:nil];
}