iOS使用UIAlertController三种显示提示框代码

UIAlertView在IOS 8以上版本已经过时了,官方推荐我们使用UIAlertController代替UIAlertView、UIActionSheet

1、UIAlertController显示普通的Alert

- (IBAction)showAlert:(UIButton *)sender {

//显示提示框

//过时

// 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显示带文本输入的的Alert


- (IBAction)showList:(UIButton *)sender {

//提示框添加文本输入框

UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Title" message:@"This is an alert." preferredStyle:UIAlertControllerStyleAlert];

UIAlertAction* okAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {//响应事件//得到文本信息

for(UITextField *text in alert.textFields){

NSLog(@"text = %@", text.text);

}  

}];

UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:^(UIAlertAction * action) { //响应事件

NSLog(@"action = %@", alert.textFields);

}];

[alert addTextFieldWithConfigurationHandler:^(UITextField *textField) { textField.placeholder = @"登录"; }];

[alert addTextFieldWithConfigurationHandler:^(UITextField *textField) { textField.placeholder = @"密码"; textField.secureTextEntry = YES; }];

[alert addAction:okAction]; [alert addAction:cancelAction];

[self presentViewController:alert animated:YES completion:nil];

}

3、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]; 

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容