在iOS中,不同的视图控制器负责不同的功能,采用不同的风格向用户呈现信息。下面对各个视图控制器做个总结:
1,标准视图控制器 - View Controller
这个控制器只是用来呈现内容。通常会用来作为子类,以向屏幕中添加逻辑。
2,导航控制器 - Navigation Controller
这个控制器呈现一个视图控制器的栈,应用程序可以在上面推入更多的视图控制器。
当新视图推入栈,或旧视图弹出栈时,导航控制器会以动画的形式(比如卷动)显示隐藏这些视图。
使用样例:系统“设置”应用程序
3,表格视图控制器 - Table View Controller
这个视图控制器给出了一个单元列表,其中的单元格可以分别配置、设定格式、排序和分组。
表格视图控制器可用于显示一组项目,经常与导航控制器结合使用,列出可供用户使用的视图。
使用样例:系统“设置”,“电话”应用程序
4,选项卡栏控制器 - Tab Bar Controller
这个用来呈现一组视图控制器,可以通过底部的一个选项卡栏进行选择。当用户点击选项卡栏上的按钮时,选项卡栏控制器会隐藏当前显示的视图控制器,并显示另一个。
使用样例:系统“App Store”应用程序
5,分割视图控制器 - Split View Controller
这个可以并排显示父子视图结构,可以在父视图中查看一个概览,在子视图中查看详细信息。
在iOS8之前,只有iPad上提供分割视图控制器。自iOS8起,使用分割视图控制器,系统会自动决定控制器的外观。可能会并排显示视图、在查看子视图时隐藏父视图,或将父视图作为覆盖层显示。
使用样例:iPad上的“设置”应用程序
6,页面控制器 - Page View Controller
这个控制器在一个“翻页”界面中呈现视图控制器。像一本书一样,书里的每一“页”都是一个视图控制器,用户可以在屏幕上拖动手指来翻页。适用于创建书籍或杂志风格的应用程序。
使用样例:iPhone或iPad上的“iBooks”应用程序
7,GLKit控制器 - GLKit View Controller
这个控制器允许使用OpenGL向用户呈现3D图像。是一个非常专用化的视图控制器。
8,集合视图控制器 - Collection View Controller
这个视图控制器呈现一种可定制、可配置的视图网格,其呈现方式类似于表格视图控制器,但其中是更为灵活的项目,而不再是单独的单元格。
使用样例:iPhone上的“照片”应用程序
9,AVKit播放器视图控制器 - AVKit Player View Controller
这个控制器显示一个全屏视频播放器,是为了播放视频内容设计的。
(注意:在iOS上,视图控制器可以包含其他视图控制器。比如导航控制器就是一个视图控制器,用来管理屏幕顶端导航栏的外观,以及一个或多个其他视图控制器。)
原文出自: 转载请保留原文链接: