2016-12-22 36 views
0

搜索SO,我发现有许多关于以编程方式导航到destinationViewController的问题,但没有关于如何将destinationViewController(以编程方式)推送到触发它的同一个导航控制器。目标视图控制器如何以编程方式推送到相同的导航控制器,Swift

这是我有什么(见故事板的图片)

我有2个场景各自的控制器,约会(源)和appointmentTimes(目的地)

一个。导航控制器通过继电器连接到约会。

b。约会时间没有通过故事板中的segue连接到约会(因为我想在预约场景中点击按钮('预约约会')时导航到它)

这就是我想要的故事板)

a。当用户点击预约场景(源)中的按钮('预约预约')时//完成

b。向服务器发出一些请求并获得响应,用户以编程方式导航到预约时间场景(目的地)//完成

c。我想预约时间场景被推到与预约场景相同的导航堆栈上。这意味着用户可以在两个场景之间自由导航(通过点击约会场景中的“预约约会”,他们可以进入预约时间场景,并且通过点击预约时间场景中的返回按钮,他们可以返回预约场景)//我怎样才能实现这个 ??

enter image description here

回答

0

我想通了,下面的步骤帮助实现添加到源场景的编程相同的导航堆栈目标场景所期望的结果。

  1. 创建手工SEGUE:进入故事板,在源场景的黄色图标点鼠标(你可以找到它的身影的顶部)和控制+拖动到目标场景中创建一个手动继续。

  2. 给segue一个ID,选择segue并转到属性并在标识符单元格中添加一个名称。

  3. 以编程方式调用segue self.performSegue(withIdentifier: "appointment", sender: nil),这会将目标场景添加到与源场景相同的导航堆栈。

相关问题