视图控制器应该如何中止加载/解散?

时间:2012-01-30 17:24:28

标签: ios

我有一个包含表视图的视图控制器,它包含在导航控制器中,即在应用委托中,这两个被创建并设置为:

UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:self.myViewController];
self.window.rootViewController = navController;

如果用户点击表格中的一行,则会创建另一个视图控制器并将其推送到导航控制器的堆栈:

   [self.navigationController pushViewController:webPageController animated:YES];

webPageController加载和读取本地文件。如果文件丢失,我想中止加载webPageController并显示其视图并显示表格视图。 我该怎么做到这一点?

如果webPageController检测到问题我尝试过调试各种事情,例如:

[self.navigationController popViewControllerAnimated:YES];

 [self.navigationController.navigationBar popNavigationItemAnimated:YES];

要从导航堆栈中弹出自己,但这些不起作用,导航控制器试图像这样弹出自己是不对的?实现这个的规范方法是什么?

由于

1 个答案:

答案 0 :(得分:2)

那应该没问题。你在哪里调用popViewControllerAnimated:?如果你在viewDidAppear之前调用,你可能会遇到问题。 ViewControllers需要完成显示并消失,然后才能进行任何类型的弹出或推送到堆栈。如果你以前这样做,你会得到非常奇怪的结果。最常见的症状是它不起作用。它内部的按钮通常也会搞砸。