@H_404_1@有没有办法在不知道可视化视图控制器视图是什么的情况下呈现视图控制器?基本上就像你会在任何时间点显示一个警报视图.
我想要做一些像:
MyViewController *myVC = [[MyViewController alloc] init]; [myVC showModally];
我希望能够在应用程序中的任何地方调用它,并将其显示在顶部.我不想关心当前的视图控制器是什么.
我打算使用它来显示登录提示.我不想使用警报视图,我也不想在整个应用程序中具有登录演示代码.
有什么想法吗?还是有更好的方式来实现这一点?我应该只是实现自己的机制,只是在窗口的顶部放置一个视图?
解决方法
嗯,你可以跟随链子.
从[UIApplication sharedApplication] .delegate.window.rootViewController开始.
在每个视图控制器执行以下系列测试.
如果[viewController isKindOfClass:[UINavigationController class]],则继续执行[(UINavigationController *)viewController topViewController].
如果[viewController isKindOfClass:[UITabBarController class]],则继续执行[(UITabBarController *)viewController selectedViewController].
如果[viewController presentViewController],则转到[viewController presentedViewController].