考虑一个带有按钮的视图。我们可以从这个按钮拖动一个连接到其他视图控制器,通过IB创建一个segue,然后就可以使用了。如果我需要一种在某些事件(比如网络进度)发生时执行segue,并且与任何用户操作无关呢?现在,我会放置一个按钮,拖动该按钮,隐藏按钮,为segue分配标识符,并在代码中的某处执行此segue。但是,我认为放置一个虚拟按钮不是正确的方法。可能我在使用storyboard时遗漏了什么,你能帮助我理解吗?
通过从您的视图控制器向下拖动并创建segue。然后,要调用您的segue,请调用:
[self performSegueWithIdentifier:@"SegueToScene1" sender:self];
确保在storyboard中为您的segue命名。
您可以使用performSegueWithIdentifier:
方法根据某些条件强制转换到新的view
。当您调用此方法时,它还会自动调用prepareForSegue:
(通常在storyboard
即将转换到新的view
时调用)。
我写了一篇关于控制推送views
的文章here,其中应该涵盖了您所说的大部分内容。