UINavigationController的viewControllers属性返回IOS7和iOS8中的不同对象

时间:2014-09-23 15:13:12

标签: ios ios7 ios8

在iOS 7中,我在此代码中获得了最后一个推送视图控制器:

id controller = [self.navigationController.viewControllers lastObject];

但iOS 8中的相同代码返回另一个控制器(此导航控制器的根视图控制器)。我怎么解决它?

1 个答案:

答案 0 :(得分:1)

我在运行测试和检查视图控制器是否正确添加到导航堆栈时遇到了同样的问题。我注意到,通过删除推动画

navigationController.viewControllers

将返回正确的视图控制器。我假设,在iOS8中,您必须等待动画完成,直到您可以从viewControllers-property中获取正确的对象。

您可以尝试使用

[navigationController setViewControllers:array animated:NO]