为什么导航视图控制器返回零视图控制器?

时间:2013-07-24 12:43:28

标签: ios objective-c uinavigationcontroller

由于某种原因,此代码返回0个元素:

NSArray *viewControllers = [[self navigationController] viewControllers];
NSLog(@"numero: %d", viewControllers.count);

我通过调用:

从viewController(A)到达我当前的ViewController(B)
[self performSegueWithIdentifier:@"NumericKeyboard" sender:self];

我在这里缺少什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果查看控制器B的segue不是推送segue,则视图控制器B将不在导航控制器拥有的视图控制器堆栈中。

因此,当针对视图控制器B调用时,[self navigationController]将为nil

如果您需要视图控制器B自动进入堆栈,则必须将segue更改为推送segue。

或者,您可以手动将控制器添加到堆栈。