UIAlertView 是iOS2.0之后就出现的。在8.0后逐渐被废除,但现在还是可以使用的。
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@“标题”
message:@“警示内容”
delegate:self cancelButtonTitle:@"确定"
otherButtonTitles:@"取消", nil];
[alertView setAlertViewStyle:UIAlertViewStyleLoginAndPasswordInput];
//下面的两个textFielder 根据alert的类型来进行是否设置。否则数组越界崩溃。
UITextField *text=[alertView textFieldAtIndex:0];
text.clearButtonMode=UITextFieldViewModeAlways;
text.placeholder=@"哇哈哈";
//
UITextField *text1=[alertView textFieldAtIndex:1];
text1.clearButtonMode=UITextFieldViewModeAlways;
text1.placeholder=@"哇哈哈";
[alertView show];
UIAlertControoler 是iOS 8.0之后出现的新技能。
UIAlertControoler可以做出UIAlertView 和 UIActionSheet
融合了二者而来。
UIAlertController中的UIAlertView实现
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"警告" message:@"发生了什么" preferredStyle:UIAlertControllerStyleActionSheet];
UIAlertAction *action = [UIAlertAction actionWithTitle:@"警告" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
//按钮被点击
NSLog(@"action click");
}];
[alert addAction:action];
[alert addTextFieldWithConfigurationHandler:^(UITextField *textField) {
textField.placeholder = @"姓名";
}];
[alert addTextFieldWithConfigurationHandler:^(UITextField *textField) {
textField.placeholder = @"年龄";
}];
[self presentViewController:alert animated:YES completion:^{
}];
UIAlertController中UIActionSheet实现
UIAlertController *alertAct = [UIAlertController alertControllerWithTitle:@"警告" message:@"发生了什么" preferredStyle:UIAlertControllerStyleActionSheet];
UIAlertAction *aaa = [UIAlertAction actionWithTitle:@"1" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
NSLog(@"action sheet click 1");
}];
[alertAct addAction:aaa];
[alertAct addAction:[UIAlertAction actionWithTitle:@"2" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
NSLog(@"action sheet click 2");
}]];
[self presentViewController:alertAct animated:YES completion:^{
}];