今天在xcode8.1的AppDelegate.m中要添加一个提示框,发现添加不上,试了试UIAlertView可以正常添加,但是在xcode8.0之后UIAlertView就被UIAlertController取代了,所以嘛,咱们也要与时俱进嘛!
一、UIAlertController的简单使用:
//创建UIAlertController //UIAlertControllerStyle 这是提示框显示的两种形式 //UIAlertControllerStyleAlert 在屏幕中央显示 //UIAlertControllerStyleActionSheet 从屏幕底部弹出 UIAlertController *alertCtl = [UIAlertController alertControllerWithTitle:@"提示" message:@"提示框" preferredStyle:UIAlertControllerStyleAlert]; //提示框的响应动作 UIAlertAction UIAlertAction *actionOne = [UIAlertAction actionWithTitle:@"actionOne" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { //点击事件可以在这里添加 NSLog(@"点击了ActionOne"); }]; UIAlertAction *actionTwo = [UIAlertAction actionWithTitle:@"actionTwo" style:UIAlertActionStyleCancel handler:nil]; UIAlertAction *actionThree = [UIAlertAction actionWithTitle:@"actionThree" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { NSLog(@"点击了actionThree"); }]; //添加动作至UIAlertController控制器上 [alertCtl addAction:actionOne]; [alertCtl addAction:actionTwo]; [alertCtl addAction:actionThree]; [self presentViewController:alertCtl animated:YES completion:nil];
二、在AppDelegate中的使用:
//初始化UIAlertController UIAlertController *alertCtl = [UIAlertController alertControllerWithTitle:@"提示" message:@"AppDelegate中" preferredStyle:UIAlertControllerStyleAlert]; UIAlertAction *alertAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleDefault handler:nil]; [alertCtl addAction:alertAction]; //初始化UIWindows UIWindow *aW = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds]; aW.rootViewController = [[UIViewController alloc]init]; aW.windowLevel = UIWindowLevelAlert + 1; [aW makeKeyAndVisible]; [aW.rootViewController presentViewController:alertCtl animated:YES completion:nil];