当前位置:  开发笔记 > 编程语言 > 正文

显示来自viewDidLoad的警报消息

如何解决《显示来自viewDidLoad的警报消息》经验,为你挑选了2个好方法。

我想从一个显示警报消息viewDidLoad()的方法,ViewController.m从替代viewDidAppear()方法.

这是我的代码:

- (void)viewDidLoad {
    [super viewDidLoad];

    //A SIMPLE ALERT DIALOG
    UIAlertController *alert =   [UIAlertController
                              alertControllerWithTitle:@"My Title"
                              message:@"Enter User Credentials"
                              preferredStyle:UIAlertControllerStyleAlert];


    UIAlertAction *cancelAction = [UIAlertAction
                               actionWithTitle:NSLocalizedString(@"Cancel", @"Cancel action")
                               style:UIAlertActionStyleCancel
                               handler:^(UIAlertAction *action)
                               {
                                   NSLog(@"Cancel action");
                               }];

    UIAlertAction *okAction = [UIAlertAction
                           actionWithTitle:NSLocalizedString(@"OK", @"OK action")
                           style:UIAlertActionStyleDefault
                           handler:^(UIAlertAction *action)
                           {
                               NSLog(@"OK action");
                           }];

    [alert addAction:cancelAction];
    [alert addAction:okAction];
    [self presentViewController:alert animated:YES completion:nil];
}

我收到此错误:

警告:试图提出他们的看法是不是在窗口层次!

Woodstock.. 22

确定不是错误,问题是在viewDidLoad视图层次结构中没有完全设置.如果使用viewDidAppear,则设置层次结构.

如果你真的想要调用这个警报viewDidLoad你可以通过在这个GCD块中包装你的演示调用来引起轻微的延迟,等待下一个运行循环,但是我建议你不要(它很难看).

dispatch_async(dispatch_get_main_queue(), ^ {
    [self presentViewController:alert animated:YES completion:nil];
});


小智.. 9

将此调用移至viewDidAppear:方法.



1> Woodstock..:

确定不是错误,问题是在viewDidLoad视图层次结构中没有完全设置.如果使用viewDidAppear,则设置层次结构.

如果你真的想要调用这个警报viewDidLoad你可以通过在这个GCD块中包装你的演示调用来引起轻微的延迟,等待下一个运行循环,但是我建议你不要(它很难看).

dispatch_async(dispatch_get_main_queue(), ^ {
    [self presentViewController:alert animated:YES completion:nil];
});



2> 小智..:

将此调用移至viewDidAppear:方法.

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有