0

在我的视图控制器中,如果我通过根视图控制器导航,它可以通过这段代码正常工作,

[self.navigationController popToRootViewControllerAnimated:YES];

但是当我尝试通过下面的代码自定义导航到视图控制器时,

ViewController2 *vc = [[[ViewController2 alloc] init]];

[self.navigationController popToViewController:vc animated:YES];

这样我的应用程序崩溃并显示以下错误:

terminate called throwing an exception.

帮我把它删掉。

4

2 回答 2

0

您只能使用该方法弹出视图控制器数组中已经存在的 vc。

编辑:作为 iOS 新手,您需要花时间阅读(并重新阅读)UINavigation Controller 类描述,以及关于使用 UIViewController 和各种视图控制器目录的两三个 Apple 指南。是的,它有很多东西需要阅读和理解——但是,我们现在所有从事 iOS 工作的人都已经做到了。没有什么神奇的方法可以让您的应用程序正常工作。您对 popToViewController 的使用向社区证明了您没有完成上述操作,因为如果您阅读了文档,您就不会发布问题。

如果看起来您已经做出了诚实的努力以使某些事情发挥作用,但在某些方面受阻,而经验丰富的人可以提供洞察力,那么尝试在 SO 上帮助他人的人更有可能这样做。

于 2013-11-12T14:48:13.270 回答
0

uinavigation 就像一个盒子,你可以在这个盒子里推任何VC,但是当你想出去的时候,你只需弹出ToRootVC ..你不能在这个盒子里把它推到外面。

于 2013-11-12T15:27:05.677 回答