2015-09-04 160 views
3

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

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

这个问题不是重复的,因为我试图重用现有的segue,而不是直接到不同的控制器。

谢谢!

+0

可能重复的[重定向到另一个视图控制器](http://stackoverflow.com/questions/23632784/redirect-to-another-view-controller) – Mehul

回答

3

选项1,使用XML文件

  • 首先,右键单击故事板file.Then选择作为源代码

enter image description here

  • 搜索SEGUE开放,然后更改目的地ID

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

选项2,使用界面生成

  • 首先,选择的源赛格瑞的ViewController

enter image description here

  • 其次,创建一个相同的赛格瑞(控制+拖动),像图为

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

enter image description here

你只需要删除旧的那个

+0

完美!谢谢。 –

+0

还有办法改变塞格的来源吗?例如,我将错误的segue从整个视图控制器创建为另一个,而不是TableViewCell作为源。我可以将其源视图从主视图更改为TableViewCell而不删除它? –

-1

删除一前一到B,然后重新创建一个新的,以C.

希望它能帮助。

+0

这就是我想要避免的。我有太多的现有赛段来回连接。 –

1

你可以dra g从ViewController顶部的ViewController图标延伸到其他控制器。

只需点击storyboard上的segue指针,然后打开属性检查器即可给segue添加标识符,最后您只需执行该代码即可。

情况1:推Segue公司至C从A

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

注:从A

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

案例2推Segue公司到B必须具有导航控制器故事板作为初始点执行之前performSegueWithIdentifier

希望这会有所帮助。

相关问题