使用Storyboard ViewControllers

时间:2013-10-04 07:41:47

标签: objective-c uiviewcontroller storyboard push segue

使用instantiateViewControllerWithIdentifier和performSegueWithIdentifier之间的主要区别是什么?

我认为performSegue ..用于正常推送viewControllers,因为instantiateViewController用于viewController的某种模态显示,然后在使用时将其解除。

由于故事板中还有模态和自定义推送,我不确定我的理论,所以如果有人能解释何时使用哪一个?

感谢。

1 个答案:

答案 0 :(得分:0)

不同之处在于performSegueWithIdentifier用于转换到界面构建器中的segue 连接的特定视图控制器(截图中的Transition1)。

instantiateViewControllerWithIdentifier可用于实例化故事板上的任何视图控制器,无论它是否通过segue连接(我的屏幕截图中的Transition2)。

推送,模态或任何其他自定义转换可用于任一场景。

instantiateViewControllerWithIdentifier也可用于从单独的故事板文件中实例化视图控制器。 segue必须位于同一个storyboard文件中。

enter image description here

performSegueWithIdentifier中使用的segue标识符需要在界面构建器中设置。

enter image description here

instantiateViewControllerWithIdentifier中使用的视图控制器标识符是界面构建器中的Storyboard ID字段。

enter image description here