几乎所有的iOS APP都利用了UIKit框架结构中定义的UI组件。知道这些基础组件的名称、角色、以及用途将对你设计APP UI来说非常有帮助。
UIKit提供的UI元素大致分为以下四类:
栏(Bar):涵盖场景信息的分栏,告诉用户他们当前在APP中所在的位置,并帮助他们定位到想要的位置,而且开始操作。
内容视图:内容视图涵盖了APP相关内容,可以通过滚动、插入、删除、排序这些行为对内容进行操作。
控件:控件表达交互行为以及信息展示。
临时视图:临时视图采用一种简约的方式向用户传达重要信息,以及额外选项或者功能。
从编程上来讲,一个UI元素就是一种视图,因为它本身就是从UIview这个类继承而来。一个视图就已经定义了如何在屏幕上绘制,以及用户的点击区域。控件(例如按钮和滑块)、内容视图(例如列表和表格)、临时视图(例如弹框提示和操作浮层)也都是视图。
管理一套或者一个层级的视图,你一般需要采用视图控制器(view controller)。一个视图控制器定义了视图的坐标、什么功能通过什么交互动作来触发、以及从一个屏到另一个屏的移动。例如,系统设置就采用了navigation controller来展示它的层级视图。
这里有一个栗子,来说明视图和视图控制器是如何综合利用来展示iOS APP的UI。
尽管开发者可以理解视图或视图控制器,但是你的用户却只把iOS APP的使用体验建立在一系列屏幕元素的集合上。通过场景,一个屏仅仅透过视觉来声明这一屏所要传达的内容或者模式。
笔记
一个iOS APP包含一个窗口(Window)。但是不同于电脑应用的窗口,一个iOS窗口没有可见的部件,并且不能移动到另外的区域。大多数的iOS APP 仅包含一个窗口;然而可以有多个表面的其他视图。
在本设计规范中,屏(Screen)这个词正如绝大多数人理解的那样。作为一个开发者,你还应该理解更多关于screen的内容,比如这里提到的UIscreen 对象,可以帮助你创建表面视图。
原文链接:https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Anatomy.html#//apple_ref/doc/uid/TP40006556-CH24-SW1