视图和控件

在屏幕上显示您的内容,并定义配合内容的互动。

概览

视图和控件是 app 用户界面的视觉组成要素。使用它们可以在屏幕上绘制和整理 app 的内容。

用于创建提醒事项的屏幕包括标签、开关和许多其他类型的视图。

视图可以托管其他视图。将一个视图嵌入到另一个视图中时,会在主视图 (称为父视图) 和嵌入视图 (称为子视图) 之间创建一种包含关系。视图层次结构让您能更轻松地管理视图。

您也可以使用视图来进行以下任意操作:

  • 响应触控和其他事件 (直接使用或与手势识别器搭配使用)。

  • 使用 Core Graphics 或 UIKit 类绘制自定内容。

  • 支持拖放互动。

  • 响应焦点变化。

  • 为视图的大小、位置和外观属性添加动画效果。

UIView (英文) 是所有视图的根类,并定义视图的通用行为。UIControl (英文) 定义特定于按钮、开关和为用户互动设计的其他视图的其他行为。

有关如何使用视图和控件的更多信息,请参阅“iOS Human Interface Guidelines (英文)”。要查看 UIKit 控件的示例,请参阅“UIKit 目录:创建和自定视图与控件 (英文)

相关主题

视图基础知识

class UIView (英文)

一个管理屏幕上矩形区域中内容的对象。

UIKit 目录:创建和自定视图与控件 (英文)

使用 UIKit 中的视图和控件来自定 iOS 和 Mac Catalyst app 的用户界面。

容器视图

使用容器视图来整理和显示大型数据集。

集合视图 (英文)

使用可配置且高度可自定的布局显示嵌套视图。

表格视图 (英文)

在可自定行的单列中显示数据。

class UIStackView (英文)

一种简化的界面,用于以列或行形式布局视图集合。

class UIScrollView (英文)

一种允许滚动浏览和缩放所含视图的视图。

内容视图

class UIActivityIndicatorView (英文)

一种显示任务正在进行的视图。

class UIImageView (英文)

一个在界面中显示单个图像或一系列动画图像的对象。

class UIPickerView (英文)

一种使用旋转齿轮或老虎机比喻来显示一组或多组值的视图。

class UIProgressView (英文)

一种描述任务随时间进展的视图。

class UIWebView (英文)

一种在 app 中嵌入网页内容的视图。

已弃用

控件

使用控件收集输入和响应用户互动。

class UIControl (英文)

控件的基类,是传递特定操作或意图来响应用户互动的视觉元素。

class UIButton (英文)

一种控件,用于执行自定代码来响应用户互动。

class UIDatePicker (英文)

一种用于输入日期和时间值的控件。

class UIPageControl (英文)

一种用于显示一系列水平点的控件,每个点对应于 app 文档或其他数据模型实体中的一个页面。

class UISegmentedControl (英文)

一种由多个部分组成的水平控件,每个部分用作独立的按钮。

class UISlider (英文)

一种用于从连续的数值范围中选择单个值的控件。

class UIStepper (英文)

一种用于增加或减少值的控件。

class UISwitch (英文)

一种提供二元选择的控件,例如开/关。

文本视图

使用文本视图显示和编辑文本。

class UILabel (英文)

一种显示一行或多行只读文本的视图,通常与控件一起使用以描述其预期用途。

class UITextField (英文)

一个在界面中显示可编辑文本区域的对象。

class UITextView (英文)

一个可滚动浏览的多行文本区域。

拖放自定 (英文)

扩展文本视图的标准拖放支持,以包含自定类型的内容。

视觉效果

class UIVisualEffect (英文)

一种用于视觉效果视图以及模糊和振动效果对象的构造器。

class UIVisualEffectView (英文)

一个实现某些复杂视觉效果的对象。

class UIVibrancyEffect (英文)

一个放大和调整视觉效果视图后面分层内容的颜色的对象。

class UIBlurEffect (英文)

一个将模糊效果应用于视觉效果视图后面分层内容的对象。

管理导航栏、标签栏、搜索栏和工具栏上显示的项目。

class UIBarItem (英文)

一个抽象超类,用于可添加到屏幕底部各栏中的项目。

class UIBarButtonItem (英文)

一个专用于放置在工具栏或标签栏上的按钮。

class UIBarButtonItemGroup (英文)

一组条形按钮项目,位于 iPad 键盘上方的快捷键栏中。

class UINavigationBar (英文)

在屏幕顶部的栏中显示的导航控件,通常与导航控制器一起显示。

class UISearchBar (英文)

一种从用户处接收搜索相关信息的专用视图。

class UIToolbar (英文)

一个沿界面底部边缘显示一个或多个按钮的控件。

class UITabBar (英文)

一个在标签栏中显示一个或多个按钮的控件,用于在 app 中的不同子任务、视图或模式之间进行选择。

class UITabBarItem (英文)

标签栏中的一项。

protocol UIBarPositioning (英文)

一组用于定义各栏在 iOS app 中放置方式的方法。

protocol UIBarPositioningDelegate (英文)

一组方法,用于支持遵守 UIBarPositioning (英文) 协议的栏的定位。

相关类型

struct UIOffset (英文)

定义一个用于指定位置偏移量的结构。

struct UIEdgeInsets (英文)

视图的插入距离。

struct NSDirectionalEdgeInsets (英文)

考虑语言方向的边缘插入。

另请参阅

用户界面

视图控制器 (英文)

使用视图控制器管理您的界面,并协助浏览 app 的内容。

视图布局 (英文)

使用堆叠视图自动布局界面的视图。当您需要精确放置视图时,请使用自动布局。

外观自定 (英文)

在 app 中添加深色模式支持,自定各栏的外观,以及使用外观代理来修改您的 UI。

动画和触感 (英文)

使用基于视图的动画和触感向用户提供反馈。

窗口和屏幕 (英文)

为视图层次结构和其他内容提供一个容器。