UIAlertController的使用及在AppDelegate.m中添加不上的解决办法

  今天在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];

 

posted @ 2016-11-23 14:16  SuiYiEn  阅读(2393)  评论(0编辑  收藏  举报