当我以编程方式执行时,有没有办法在IB中绘制segue?

时间:2012-11-08 15:20:13

标签: ios interface-builder storyboard segue

我对xcode很新。我一直在做一个项目,我有一个主标签栏控制器和几个导航控制器。我想在“导航堆栈”中保留我的后续VC,所以我使用以下方法呈现视图控制器:

- (IBAction)buttonClick:(id)sender {
   SomeViewController *pViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"ponViewController"];
    //initialize some "public variables of that controller
    [self.navigationController pushViewController:pViewController animated:YES];}

然而,当我在Storyboard上有大约6个视图控制器时,我达到状态,但它们没有视觉连接。我的同事们感到困惑,因为当他们想要看到哪个VC连接到另一个VC时,他们必须查看代码......

因此我的问题......有没有办法在InterfaceBuilder(storyboard)中连接ViewControllers而不创建任何特定类型的segue(模态,推送,自定义)。只是为了演示视图控制器之间的连接?

1 个答案:

答案 0 :(得分:1)

如果要使用segues,则不必使用pushViewController方法来显示下一个视图控制器。您可以在Interface Builder中进行全部设计,并使用推送segues连接视图控制器。您应该为每个segue提供唯一标识符。然后在你的buttonClick:方法中,你可以使用

  

performSegueWithIdentifier:(NSString *)segueIdentifier sender:(id)sender

显示视图控制器。

如果在按下视图控制器之前需要执行任何操作,则可以在

中执行此操作
  

prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender