1

我的故事板如下所示: 在此处输入图像描述

第一部分工作完美,问题是当我使用“测试模态”按钮模态显示第二个 NavigationController 时,它被正确设置为具有 rootViewController - 没有建立连接。

意思是,我知道UINavigationController 在那里(从 UIWindow 的 rootViewController 开始查询所有控制器),并且我的控制器也已加载,但 navigationController 为零,parentViewController 为零 - 我无法访问 UINavigationController(因此无法访问自定义顶部工具栏)

如果我检查第二个 UINavigationController 上的“是初始视图控制器”,它可以工作(但显然这不是我想要的)。我相信这可能是一个 UIKit 错误。还是我做错了?

4

2 回答 2

4

是否正确实现了您的 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;
}
}
于 2012-09-18T08:11:08.867 回答
2

我终于找到了这个。

我没有[super initWithCoder:decoder]在我的初始化中调用。这导致一些 UIViewController 变量未初始化。改变它之后,它就像一个魅力。

于 2012-09-21T06:02:19.473 回答