将segue从一个视图控制器重定向到另一个视图控制器

时间:2015-09-04 07:24:58

标签: ios objective-c uiviewcontroller segue

我无法找到这个看似基本问题的答案。假设我有一个带有两个视图控制器A和B的故事板以及一个从一个到另一个的segue过渡。现在,我创建了一个不同的视图控制器C,现在想将现有的segue从A重定向到C.

我按住它拖动它,命令拖动它等等它似乎不起作用。在真正的应用程序中,我有太多的segue尝试从头开始重新创建它们。有更简单的方法吗?

这个问题并不像标记的那样重复,因为我正在尝试重用现有的segue,而不是直接使用不同的控制器。

谢谢!

3 个答案:

答案 0 :(得分:3)

选项1,使用XML文件

  • 首先,右键单击Storyboard文件。然后选择open as Source    代码

enter image description here

  • 搜索segue,然后更改目标ID

      <segue destination="Esd-4c-JQq" kind="show" id="Jnu-RW-1O5"/>
    

选项2,使用Interface Builder

  • 首先,选择segue源ViewController

enter image description here

  • 其次,创建相同的segue(Control + drag),如图片所示

  • 现在,你有两个相同的segue,

enter image description here

您只需要删除旧的

答案 1 :(得分:1)

您可以将segue从ViewController顶部的ViewController图标拖动到其他控制器。

通过单击storyboard上的segue指针然后打开属性检查器,只需为segue提供标识符,最后您必须执行该代码。

案例1:从A推送Se to B

[self performSegueWithIdentifier:@"PushB" sender:self]; //PushB is segue identifier

案例2:从A推送C到C

[self performSegueWithIdentifier:@"PushC" sender:self];

注意:在执行performSegueWithIdentifier之前,您必须将导航控制器作为故事板的起始点。

希望这会有所帮助。

答案 2 :(得分:-1)

从A到B删除前一个,然后从A到C重新创建一个。

希望它有所帮助。