Ios 从情节提要获取视图控制器堆栈

Ios 从情节提要获取视图控制器堆栈,ios,objective-c,iphone,xcode,uinavigationcontroller,Ios,Objective C,Iphone,Xcode,Uinavigationcontroller,我尝试获取导航控制器的视图控制器数组。它将返回空数组,如下所示: UIStoryboard *mystoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil]; UINavigationController *nav1 = [mystoryboard instantiateViewControllerWithIdentifier:@"nav1"]; NSLog(@"%@",nav1.vi

我尝试获取导航控制器的视图控制器数组。它将返回空数组,如下所示:

   UIStoryboard *mystoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil]; 
UINavigationController *nav1 = [mystoryboard instantiateViewControllerWithIdentifier:@"nav1"];
 NSLog(@"%@",nav1.viewControllers);
但这将显示空阵列,即使它具有视图控制器


提前谢谢

是的。它将给出一个空数组。原因很简单。当您说
instanceeviewcontrollerwhiteIdentifier:@“nav1”
时,这将实例化一个新的
UINavigationController
,标识符为
nav1

在这一点上,我所理解的是您希望从这个NavigationController获取视图控制器的总数

通过使用以下代码,您可以在推送到该导航控制器上的任何viewcontroller中执行此操作

NSArray*VCArray=self.navigationController.viewControllers


希望这能解决你的问题。但是,如果没有,我无法在一定程度上了解您的实现和问题的情况下为您提供更多帮助。

以下代码可能会对您有所帮助:

代码是:

NSMutableArray *navigationArray = [[NSMutableArray alloc] initWithArray: self.navigationController.viewControllers];

这是将所有视图控制器推到堆栈中。

您是否可以发布故事板的图像,覆盖导航控制器与其他视图控制器连接的部分。