Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何计算当前VC';导航堆栈中有什么?_Ios_Uinavigationcontroller - Fatal编程技术网

Ios 如何计算当前VC';导航堆栈中有什么?

Ios 如何计算当前VC';导航堆栈中有什么?,ios,uinavigationcontroller,Ios,Uinavigationcontroller,有什么想法吗?我想知道MyViewController的数量 用这个 int count = [[navigationController viewControllers] count]; NSLog(@"controllers : %@", [navigationController viewControllers]); NSLog(@"count : %d", count); [navigationController viewControllers]返回导航堆栈中的控制器数组。使用此数

有什么想法吗?我想知道MyViewController的数量

用这个

int count = [[navigationController viewControllers] count];
NSLog(@"controllers : %@", [navigationController viewControllers]);
NSLog(@"count : %d", count);

[navigationController viewControllers]
返回导航堆栈中的控制器数组。使用此数组可以获得控制器的计数

您所说的“MyViewController的数量”不是ViewController的数量,因此我假设您想知道堆栈中有多少ViewController是您自己的自定义子类的实例。这就是方法[任何对象都属于类]的用武之地。此代码段应有助于:

NSArray *viewControllerStack = [[self navigationController] viewControllers];
NSUInteger result = 0;
for(UIViewController *vc in viewControllerStack) {
    if([vc isKindOfClass:[MyViewController class]] result++;
}

这就是您要查找的吗?

[navigationController ViewController]
它返回导航堆栈中的控制器数组。使用这个数组你可以得到控制器的数量。把它放到帖子里。只有代码的答案不完整。请查看
UINavigationController
的文档。