Ios 在UINavigationController中运行UIViewController,作为UISplitViewController的第二个视图

Ios 在UINavigationController中运行UIViewController,作为UISplitViewController的第二个视图,ios,ipad,uiviewcontroller,uinavigationcontroller,uisplitviewcontroller,Ios,Ipad,Uiviewcontroller,Uinavigationcontroller,Uisplitviewcontroller,我在尝试从视图控制器访问视图控制器的导航控制器时遇到问题,尽管它显示在导航控制器中,但始终以nill返回给我。 以下是我所拥有的(我有一个分割视图控制器,作为主控器的选项卡控制器和视图控制器(导航控制器内部)显示为详细信息): 但是,当我试图使用[self-navigationController]从ViewDidLoad中的fdvc视图控制器访问导航控制器时,它总是给我(Null)。 谢谢 我把它修好了。结果是,我不得不将代码从ViewDidLoad方法移动到ViewDidAppear,并且运

我在尝试从视图控制器访问视图控制器的导航控制器时遇到问题,尽管它显示在导航控制器中,但始终以nill返回给我。 以下是我所拥有的(我有一个分割视图控制器,作为主控器的选项卡控制器和视图控制器(导航控制器内部)显示为详细信息):

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

我把它修好了。结果是,我不得不将代码从ViewDidLoad方法移动到ViewDidAppear,并且运行良好


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

感谢您回答我的问题,它帮助了我。
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];