上QQ阅读APP看书,第一时间看更新
第7章 基础UI控件
7.1 UIKit框架
UIKitk框架提供了一整套完整的API,用于建立和管理iOS应用程序的用户界面(UI)接口、应用程序对象、事件控制、绘图模型、窗口、视图和用于控制触摸屏等的接口,是一个用于控制界面操作的Class类集合。掌握UIKit框架是iOS开发的重要基础,iOS开发过程中,70%~80%的工作是在围绕UIKit框架中定义的类进行的。
UIKit框架的类族图如图7-1所示,UIKit中的所有类都是继承自NSObject类的,其中所有的类的命名都是以UI开头,说明这些类都是与界面操作相关的类。UIKit框架中定义了几十个子类,有些类需要程序员重点掌握。
- UIResponder类定义了一个接口,响应和处理事件的对象,所有继承自UIResponder的子类都可以响应用户交互,例如,点击、滑动等。UIResponder类的实例有时被作为响应者对象。
- UIView类的对象负责定义在屏幕上一块矩形区域的显示样式,以及在这块矩形区域内发生的用户交互动作。UIView类具有若干子类,这些子类除了继承了UIView类的功能外,在样式以及用途方面进行了功能扩展,例如,UILabel可以显示文字标签、UIImageView可以用来显示图片、UIButton可以用来定义按钮的样式以及行为。
- UIViewController类用于管理iOS应用程序中的数据以及视图对象,在MVC设计模式中,控制器类是模型与视图之间交互通信的桥梁和纽带。另外,像UINavigationController和UITabBarController的这样的子类,可以用于提供管理复杂的视图控制器层级结构以及视图的其他行为。
- UIGestureRecognizer是具体手势识别类的抽象基类,提供了手势类所具有的通用方法和属性。在UIKit框架中,提供了点击(UITapGestureRecognizer)、捏合(UIPinchGestureRecognizer)、旋转(UIRotationGestureRecognizer)、滑动(UISwipeGestureRecognizer)、拖动(UIPanGestureRecognizer)、长按(UILongPressGestureRecognizer)等几种手势,在开发中可以灵活使用。
图7-1 UIKit框架