【发布时间】:2015-01-19 22:17:52
【问题描述】:
我有这个流程: UITableView foo -> detail UIView bar 包含另一个 UITableView foo_1 -> detail UIView bar_1
第一个 UITableView foo 包含一个事物列表,并通向一个包含另一个 UITableView foo_1 的详细 UIView bar,该 UIView bar_1 通向另一个包含更多详细信息的 UIView bar_1。 现在,我在主应用程序标签栏上有几个按钮,我可以使用它来更改视图。当我点击一个指向另一个视图的按钮,然后点击应该返回我的 UITableView foo 的按钮时,我会看到 foo、bar 或 bar_1,这取决于我是哪个视图,我最后一次使用我描述的流程,但是每次点击标签栏上的相应按钮时,我都想返回 foo。
我认为正确的方法是:
-(void) viewWillDisappear:(BOOL)animated{
[self.navigationController popToRootViewControllerAnimated:NO];
}
但我不确定在哪里使用此代码...我尝试将其放入 bar_1 但它导致“嵌套弹出动画可能导致导航栏损坏意外状态。导航栏子视图树可能已损坏。"。结果是导航栏变得疯狂并显示为空...... 那么在类似情况下,返回的正确方法是什么?
【问题讨论】:
-
使用视图控制器并适当地定位按钮的segue。听起来很像您正在使用单个视图控制器并向其添加越来越多的视图...
-
哦不,我不是。对不起,很难解释。 foo 是一个仅包含 uitableview 的视图控制器。 bar 是一个视图控制器,包含一些东西和一个 uitableview (foo_1) 。 bar_1 是一个包含一些东西的视图控制器。我说的是三种不同的视图控制器。
标签: ios objective-c iphone uitableview uiview