在Objective-C中,
获取当前UINavigationController引用的最佳方式是什么?我想从任何可能没有引用UIController,委托或其他任何类的类访问它.
是否有现有的方式来获取当前的UINavigationController?我应该向我的应用程序委托添加一些东西,并检索它吗?
事实证明,您可以从任何UIView / UIViewController后代
获取它,尽管有相当多的点语法.
@H_
403_8@self.(view).window.rootViewController.navigationController;
如果您正在使用从任何其他类下降的对象,则同样如此,除非您必须通过UIApplication
@H_
403_8@[UIApplication sharedApplication].keyWindow.rootViewController.navigationController;
当然,这两种方法都是以较大的方式打破MVC,绝对推荐将任何必须触摸“默认导航控制器”的逻辑添加到根视图控制器中.