我的 Storyboard如下所示:
第一部分工作完美,问题是当我使用“测试模态”按钮模态显示第二个 NavigationController 时,它已正确设置为具有 rootViewController - 没有建立连接。
意思是,我知道 UINavigationController 在那里(从 UIWindow 的 rootViewController 开始查询所有 Controller ),并且我的 Controller 也已加载,但 navigationController 为零,parentViewController 为零 - 我无法访问 UINavigationController(因此无法访问自定义顶部工具栏)
如果我检查第二个 UINavigationController 上的“是初始 View Controller ”,它可以工作(但显然这不是我想要的)。我相信这可能是一个 UIKit 错误。还是我做错了?
最佳答案
是否正确实现了您的 prepareForSegue 方法?
这就是我在应用程序中实现 prepareForSegue 方法的方式。
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if([segue.identifier isEqualToString:@"yourConnectionName"]) {
UINavigationController *navController = segue.destinationController;
YourViewControllerClass *controller = (YourViewControllerClass *)navController.topViewController;
controller.delegate = self;
}
}
关于ios - 当 UINavigationController 通过 Storyboard 模态呈现时,它的 rootViewController 与它没有连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12472424/