1、UIAlertController显示普通的Alert,可以是注销功能等等,话不多说直接贴码
- (IBAction)showAlert:(UIButton *)sender {
//过时的提示框,UIAlertView在IOS 8以上版本已经过时了,官方推荐我们使用UIAlertController代替UIAlertView、UIActionSheet
// UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"message" delegate:self cancelButtonTitle:@"cancel" otherButtonTitles:@"ok", nil];
// [alert show];
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Title"message:@"This is an alert." preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *defaultAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
//响应事件
NSLog(@"action = %@", action);
}];
UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
//响应事件
NSLog(@"action = %@", action);
}];
[alert addAction:defaultAction];
[alert addAction:cancelAction];
[self presentViewController:alert animated:YES completion:nil];
}
2、UIAlertController显示ActionSheet
- (IBAction)showSheet:(UIButton *)sender {
//显示弹出框列表选择
UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Title" message:@"This is an Sheet."preferredStyle:UIAlertControllerStyleActionSheet];
UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * action) {
//响应事件
NSLog(@"action = %@", action);
}];
UIAlertAction* deleteAction = [UIAlertAction actionWithTitle:@"删除" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * action) {
//响应事件
NSLog(@"action = %@", action);
}];
UIAlertAction* saveAction = [UIAlertAction actionWithTitle:@"保存" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
//响应事件
NSLog(@"action = %@", action);
}];
[alert addAction:saveAction];
[alert addAction:cancelAction];
[alert addAction:deleteAction];
[self presentViewController:alert animated:YES completion:nil];
}
3.加载图片的UIAlertController效果图
//配网超时
NSString *message = [NSString stringWithFormat:@"\n\n\n\n\n\n%@\n",@"连接超时"];
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"" message:message preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction* helpAction = [UIAlertAction actionWithTitle:@"查看帮助" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
//响应事件
NSLog(@"action = %@", action);
}];
UIAlertAction *iKnowAction = [UIAlertAction actionWithTitle:@"我知道了" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
//响应事件
NSLog(@"action = %@", action);
}];
//按钮颜色
[helpAction setValue:[UIColor blackColor] forKey:@"titleTextColor"];
[iKnowAction setValue:[UIColor redColor] forKey:@"titleTextColor"];
UIImageView *imageView2 = [[UIImageView alloc] init];
imageView2.image = [UIImage imageNamed:@"netWarning_icon"];
[alert.view addSubview:imageView2];
[imageView2 mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(88.f, 88.f));
make.centerX.equalTo(alert.view.mas_centerX);
make.top.equalTo(alert.view.mas_top).offset(yAutoFit(15.f));
}];
[alert addAction:helpAction];
[alert addAction:iKnowAction];
[self presentViewController:alert animated:YES completion:nil];