0

我在尝试从中访问视图控制器的导航控制器时遇到问题,尽管它显示在导航控制器中,但始终返回为零。这是我所拥有的(我有一个拆分视图控制器,它作为主控的选项卡控制器和视图控制器(在导航控制器内部)作为细节呈现):

FirstDetailViewController *fdvc = [[FirstDetailViewController alloc] initWithNibName:@"FirstDetailViewController" bundle:nil];
UINavigationController *fdvcNav = [[UINavigationController alloc] initWithRootViewController:fdvc];

NSArray *ipadVCs = [[NSArray alloc] initWithObjects:tabController, fdvcNav, nil];
UISplitViewController *splitvc = [[UISplitViewController alloc] initWithNibName:nil bundle:nil];
[splitvc setViewControllers:ipadVCs];
[[splitvc view] setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"splitViewControllerBG"]]];
[splitvc setDelegate:fdvc];

[[self window] setRootViewController:splitvc];
[[self window] makeKeyAndVisible];

但是,当我尝试使用 [self navigationController] 从 ViewDidLoad 中的 fdvc 视图控制器访问导航控制器时,它总是给我(Null)。谢谢!

4

1 回答 1

1

我修好了它。原来,我不得不将我的代码从 ViewDidLoad 方法移动到 ViewDidAppear 并且它工作正常。

viewDidLoad 在 navigationController 属性更新之前被调用,这是我的错误。

于 2013-08-10T21:16:21.943 回答