使用ios和storyboard编程UIViewControllers循环

我刚刚开始使用IOS 5和故事板的IOS开发,想知道如何解决以下问题:

我有一个树分层结构,其中产品是树的节点,产品是树叶。 我创build了一个TileViewController视图来显示特定级别的所有节点。 当用户在TileView中select一个节点时,根据其types(叶或非叶),我将新的TileViewController推入应用程序NavigationController,或者显示一个DetailViewController。

我现在做的是以编程方式做所有事情(我的意思是跟踪用户在TileViewController中点击了什么,并决定在NavigationController中下一步要做什么)。 我得到了一个故事板的句柄,并使用下面的代码来创build下一个TileViewController(如果需要的话)。

UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; TileViewController *controller = [storyBoard instantiateViewControllerWithIdentifier:@"TileViewController"]; controller.model = self.model; [self.navigationController pushViewController:controller animated:YES]; 

我无法弄清楚的是如何在TileViewController中使用故事板而不是硬编码逻辑。 这是可能吗? 我想过使用一个TileViewController,只是重新加载基于用户select显示的瓷砖,但后来我失去了导航片。 任何想法我怎么能做到这一点?

谢谢。

您可以从任何UI组件开始导航,回到故事板中的相同场景来定义一个segue,所以如果是从一个button,按住ctrl-从button拖动到代表平铺视图控制器的黄色球体。

将其定义为push segue,然后在prepareForSegue中传递相关的细节。 这将创build一个潜在的无限导航堆栈,而不必在故事板中重复自己。