将UINavigationController的起点更改为详细的UIViewController,而不会丢失其上下文?

时间:2013-09-25 08:28:44

标签: ios objective-c uiviewcontroller uinavigationcontroller

如何在不丢失其背景的情况下使用UINavigationController更改Storyboard的起点?

我有一个简单的StoryboardUINavigationController包含UICollectionView作为概述,UIViewController作为详细视图控制器。

Screenshot

只要我的起始箭头指向UINavigationController,它就可以正常工作。但是,我希望直接启动跳过UIViewController的最新详细信息UICollectionView(右侧)。但是当我将起始箭头拖到细节控制器时,我会遇到问题:

  • 实际详细信息prepareForSegueUICollectionView方法中填充的ViewController内容随后丢失
  • 详细视图控制器中的[self.navigationController popViewControllerAnimated:YES]也不起作用。因此,无法返回概述UICollecionView

在不丢失其navigationControl上下文和UIViewController填充方法的情况下,更改启动preparefForSegue的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

[self.mavigationController setViewControllers:@[…] animated:YES];

//只需设置所需的任何UIViewController数组,即可替换或过滤它。数组中的最后一个将显示在屏幕上。