模式导航控制器选择控制器 - Swift

时间:2017-07-30 20:00:55

标签: ios objective-c swift uinavigationcontroller

我有这种情况:

enter image description here

我在视图控制器中有一个带有表视图和varius单元格的导航控制器。 当点击单元格时,我转到另一个视图控制器(带有“TEST”标签文本进行测试)。

我的问题是:

我的应用程序可以从URL打开,在其查询字符串中有一个参数,指示哪个控制器必须打开(使用表视图或带有标签的控制器)。

我无法找到一种以“干净”的方式实现这一目标的模式。

例如:

我收到一个带有查询参数的URL,表明我必须打开带有标签的控制器。

如何组织代码以表明您必须首先使用表格进入控制器并模拟单元格点击然后转到最终控制器?

1 个答案:

答案 0 :(得分:0)

每个导航控制器都有视图控制器阵列。如果您需要添加两个视图控制器,可以使用下一个解决方案:

NSMutableArray *controllers = [self.navigationController.viewControllers mutableCopy];
[controllers addObject:tableVC];
[controllers addObject:labelVC];
[self.navigationController setViewControllers:controllers animated:YES];

这将为labelVC设置动画,而不会在进程中显示tableVc。当用户按下后退按钮时,他将返回到tableVC