Ios 是否需要从俯视图控制器显示警报视图?

Ios 是否需要从俯视图控制器显示警报视图?,ios,cocoa-touch,Ios,Cocoa Touch,显示UIAlertController时,是否需要使用屏幕上最顶端的UIViewcontroller?此UIViewController需要可见还是仅在视图层次结构中? 如果直接从UIWindow的根视图控制器显示任何警报,会有任何缺点吗?在我看来,从应用程序的根视图控制器显示没有什么错。看看下面的问题和公认的答案 我在UIAlertViewController上使用了一个类别,类似于上面链接中的答案中所建议的类别,而且我从未遇到过任何问题。我认为从应用程序的根视图控制器呈现没有什么错。看看下

显示
UIAlertController
时,是否需要使用屏幕上最顶端的
UIViewcontroller
?此
UIViewController
需要可见还是仅在视图层次结构中?
如果直接从
UIWindow
的根视图控制器显示任何警报,会有任何缺点吗?

在我看来,从应用程序的根视图控制器显示没有什么错。看看下面的问题和公认的答案


我在UIAlertViewController上使用了一个类别,类似于上面链接中的答案中所建议的类别,而且我从未遇到过任何问题。

我认为从应用程序的根视图控制器呈现没有什么错。看看下面的问题和公认的答案


我在UIAlertViewController上使用了一个类别,类似于上面链接中的答案中提出的类别,我从未遇到过任何问题。

我认为最好从当前显示的视图控制器中显示
UIAlertViewController
。对于我来说,我曾经得到当前显示的视图控制器,如下所示:

UIWindow *keyWindow = [UIApplication sharedApplication].keyWindow;
UIViewController *viewController = keyWindow.rootViewController;
while (viewController.presentedViewController) {
    viewController = viewController.presentedViewController;
}
[viewController presentViewController:alertController animated:YES completion:nil]

使用root表示视图控制器之前给我造成了一个问题,但我记不起来了。使用最上面的视图控制器是安全的。

我认为最好从当前显示的视图控制器中显示
UIAlertViewController
。对于我来说,我曾经得到当前显示的视图控制器,如下所示:

UIWindow *keyWindow = [UIApplication sharedApplication].keyWindow;
UIViewController *viewController = keyWindow.rootViewController;
while (viewController.presentedViewController) {
    viewController = viewController.presentedViewController;
}
[viewController presentViewController:alertController animated:YES completion:nil]

使用root表示视图控制器之前给我造成了一个问题,但我记不起来了。使用最上面的一个是安全的。

你试过了吗?嗯,它有效,但我要问的是,它是否在所有情况下都有效-即,是否需要额外的逻辑。你试过了吗?嗯,它有效,但我要问的是,它是否在所有情况下都有效-即,是否需要额外的逻辑。