在iOS8以前,我们都习惯性用UIAlertView去做提示框,但是在iOS8以后,当当前界面有UITextField输入框时,当点击确定pop到上一个页面时,会出现键盘闪一下的问题,iOS8的SDK中,苹果提倡使用UIAlertController取代UIAlertView。
所以现在我项目中的代码都是这样写的:
#define SYSTEM_VERSION [[UIDevice currentDevice].systemVersion floatValue]
if (SYSTEM_VERSION >= 8.0) {
UIAlertController *alertCtrl = [UIAlertController alertControllerWithTitle:@"赎回成功" message:nil preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
[self.navigationController popViewControllerAnimated:YES];
}];
[alertCtrl addAction:okAction];
[self presentViewController:alertCtrl animated:YES completion:nil];
}else{
//这个else一定要写,否则会导致在ios8一下的真机crash
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"赎回成功" message:nil delegate:self cancelButtonTitle:nil otherButtonTitles:@"确定", nil];
alert.tag = 998;
[alert show];
}
#pragma mark-UIAlertViewDelegate
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (alertView.tag == 998) {
[self.navigationController popViewControllerAnimated:YES];
}
}