所以这是我真正遇到麻烦的问题。我正在使用此代码检索推送到 UINavigationController 堆栈的 UIViewController 的父 Controller :
MyAppDelegate *delegate = [[UIApplicationDelegate sharedApplication] delegate];
UINavigationController *nav = delegate.navigationController;
MyParentViewController *parent = (MyParentViewController *)nav.topViewController;
parent.myProperty = @"propertyValue";
但是,这似乎仅在您使用具有单个导航 Controller 的应用程序时才有效。我的结构是:
->UITabBarController
-->UINavigationController
--->MyYetAnotherParentViewController
-->UINavigationController
--->MyOtherParentViewController
-->UINavigationController
--->MyParentViewController
这意味着我在标签栏 Controller 中有 3 个导航 Controller 。
我目前在第三个导航 Controller 中,并将一个 View Controller 推到 MyParentViewController 之上。
我正在尝试使用属性将数据从我推送到 MyParentViewController 的 UIViewController 传递。如果我有此设置,我将如何检索我推送到堆栈的 UIViewController 的父级?
最佳答案
不确定这是否是您要查找的内容,但我认为它是 [nav viewControllers] 数组中最顶层的 ViewController。
关于iphone - 在具有多个 UINavigationController 的 UITabBarController 中获取推送到 UINavigationController 堆栈上的 View Controller 的父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7472125/