以编程方式推送至导航堆栈中的视图控制器[2],然后展开至[1]

时间:2018-08-18 15:09:14

标签: ios objective-c uinavigationcontroller segue unwind-segue

我有一个UITableViewController,其中填充了用户列表。 UITableViewController嵌入在导航控制器中。在表视图中点击一行将推动视图控制器userVC。轻按+上的userVC按钮可推动视图控制器addAlarmVC。 (请参见下图)

默认行为

Default Behavior

快速操作

Quick Action Behavior

我想从我的用户表视图中执行快速操作,使我可以以编程方式直接推动addAlarmVC,然后展开或“返回” userVC。我要同时具有“默认”和“快速操作”这两个导航路线。

从本质上来说,我的问题是:在具有[0,1,2]的导航堆栈中,如何以允许我放松到1的方式从0推到2?我正在使用情节提要,但如果可以通过编程方式解决问题,则我更愿意这样做。

1 个答案:

答案 0 :(得分:1)

您可以尝试这样做(在IB中为每个VC提供一个故事板标识符并加载它)

let userVC =  ////// self.storyboard.instan
let addAlarmVC =  ////// self.storyboard.instan
self.navigationController.setViewControllers([self,userVC,addAlarmVC],animated:true)