我正在处理我的收藏夹实施。最后,它应该与iPhone上的电话簿中的收藏夹功能相同。
我有以下设置(除了其他控制器和类):
从 favoritesNavController ,我想选择一行(来自 listNavController ),这样我就可以在我的收藏夹表视图中添加一个新条目。
所以,我决定重新使用我的 listNavController ,因为它具有我需要的所有功能。像搜索,索引等
我设法从 mainTabBarController 中显示 listNavController 。所以这里没问题。当我从 listNavController 中选择一行时,它会显示该行的 detailViewController 。当然,这是预期的,因为它位于 listNavController 中的 didSelectRowAtIndexPath 。
但是,当我在 favoritesModelViewController 的帮助下从我的 favoritesNavController 启动 listNavController 时,它仍会显示 detailViewController 选择一行时。
在这种情况下,我想将所选行返回到 favoritesNavController 。然后我可以将它添加到我最喜欢的列表中。
那么,我如何在代码中区分这种行为?我应该使用协议,授权等吗?
任何提示?
关于,
拉特格
答案 0 :(得分:0)
事实证明我的方向是错误的。
已发布问题的解决方案如下:
我创建了listNavController的子类,并重写了didSelectRowAtIndexPath方法。接下来,我将这个新的视图控制器与导航控制器一起呈现为模态视图(presentModalViewController)。
最后,我将子代视图控制器的委托和协议设置为启动类。这样我就可以从同一个控制器中呈现和关闭子类视图控制器。一个更干净和MVC的方式!