我的餐厅故事板布局是这样的:
主视图控制器 > 导航控制器 > 表视图控制器 > 3 个单独的表视图
主视图控制器转到几个不同的视图控制器,所以我需要定期返回它。表视图控制器控制不同菜单的 3 个单独的表视图。在导航控制器中拥有表视图控制器允许后退按钮退出 3 个单独的表视图,但我无法弄清楚如何从表视图控制器获取后退按钮到主视图控制器。
到目前为止,我已经在故事板 GUI 中完成了这一切,所以如果可以在那里对修复进行排序,那对我来说最容易理解。
我的餐厅故事板布局是这样的:
主视图控制器 > 导航控制器 > 表视图控制器 > 3 个单独的表视图
主视图控制器转到几个不同的视图控制器,所以我需要定期返回它。表视图控制器控制不同菜单的 3 个单独的表视图。在导航控制器中拥有表视图控制器允许后退按钮退出 3 个单独的表视图,但我无法弄清楚如何从表视图控制器获取后退按钮到主视图控制器。
到目前为止,我已经在故事板 GUI 中完成了这一切,所以如果可以在那里对修复进行排序,那对我来说最容易理解。
如果您不想将导航控制器放在主视图控制器之前,则可以使用“展开转场”。
创建一个 IBAction 方法以在主视图控制器中执行展开转场:
初级VC.h
- (IBAction)unwound:(UIStoryboardSegue *)segue;
初级VC.m
- (IBAction)unwound:(UIStoryboardSegue *)segue
{
// No need to do anything here...
}
在第一个 Table View Controller 中,将一个条形按钮项拖到导航项(条形)的左上方。一旦它在那里,按住控制键并从栏按钮向下拖动到场景底部,您将看到一个绿色的退出图标。该unwound:
方法应显示在列表中...选择该方法。
现在您的按钮应该返回到主视图控制器。
为什么不将导航控制器作为主视图控制器的一部分?然后,当您按下表视图控制器时,您会在其上获得一个后退按钮。所以它将是导航控制器 -> 主视图控制器 -> 表视图控制器 -> ...
我已经用故事板做到了这一点,因为导航控制器场景首先是,然后与根视图控制器的关系是主视图控制器