UIAlertView在IOS 8以上版本已經(jīng)過(guò)時(shí)了,官方推薦我們使用UIAlertController代替UIAlertView、UIActionSheet
1?UIAlertController顯示普通的Alert
- (IBAction)showAlert:(UIButton *)sender {
//顯示提示框
//過(guò)時(shí)
// 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) {//響應(yīng)事件
NSLog(@"action = %@", action);
}];
UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) { //響應(yīng)事件
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) {//響應(yīng)事件//得到文本信息
for(UITextField *text in alert.textFields){
NSLog(@"text = %@", text.text);
}??
}];
UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:^(UIAlertAction * action) { //響應(yīng)事件
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) { //響應(yīng)事件 NSLog(@"action = %@", action);?
}];
UIAlertAction* deleteAction = [UIAlertAction actionWithTitle:@"刪除" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * action) { //響應(yīng)事件 NSLog(@"action = %@", action);?
}];
UIAlertAction* saveAction = [UIAlertAction actionWithTitle:@"保存" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) { //響應(yīng)事件 NSLog(@"action = %@", action);
}];
[alert addAction:saveAction]; [alert addAction:cancelAction]; [alert addAction:deleteAction]; [self presentViewController:alert animated:YES completion:nil];?
}