在ios开发中,常常需要从一个页面跳转到另外一个页面,而跳转的方式有动态实现和xib两种方式。
动态实现主要有:
1.可以通过NavigationController导航控制器通过压栈和出栈的方式实现(遵循后进先出原则),即push和pop两种方式,它本身是一个容器控制器,自身包含了所有子控制器的页面跳转。
2.也可以通过模态窗口方式,即present和dismiss方式实现,创建新的视图控制器。模态方式和控制器NavigationController的不同点在于,模态方式的实现可以在导航控制器链条的任意位置插入,而不影响导航控制器链条,在关闭模态窗口之前,无法与其他控制器进行交互。
3.通过标签控制器,即UITabBarController,它也是一个容器控制器,通过tab标签之间的跳转来实现,在各个页面之间的跳转中,tabbar自身并不消失。
xib实现的话,可以通过拖拽的方式,用show和model方式来实现。show是新版本出现后❤️加入的push方式,相对老式的push方式更加智能。model则是xib中的模态方式实现。