版本:Unity 6 (6000.0)
语言:English
视觉树
面板

视觉元素和视觉树简介

UI 工具包中最基本的构建块是UI(用户界面) 允许用户与您的应用程序交互。Unity 目前支持三种 UI 系统。 更多信息
参见 术语表
中的视觉元素视觉树的一个节点,它实例化或派生自 C# VisualElement 类。您可以设置外观样式、定义行为,并将其作为 UI 的一部分显示在屏幕上。 更多信息
参见 术语表
。视觉元素按父子关系排序成层次树,这称为视觉树一个由轻量级节点组成的对象图,包含窗口或面板中的所有元素。它定义了您使用 UI 工具包构建的每个 UI。
参见 术语表

下图显示了视觉树的简化示例以及 UI 工具包中的渲染结果。

Simplified hierarchy of the visual tree
视觉树的简化层次结构

图中的根代表编辑器 UI 中的EditorWindow.rootVisualElement 和运行时 UI 中的UIDocument.rootVisualElement

VisualElement 类是视觉树中所有节点的基础。VisualElement 基类包含样式、布局数据和事件处理程序等属性。视觉元素可以具有子元素和后代视觉元素。例如,在上图中,第一个Box 视觉元素具有三个子视觉元素:LabelCheckboxSlider

您可以通过内联样式和样式表来自定义视觉元素的外观。您还可以使用事件回调来修改视觉元素的行为。

VisualElement 派生到定义其他行为和功能(例如控件)的子类中。UI 工具包包含各种具有专门行为的内置控件。控件是图形用户界面中的一个元素。例如,以下项目可作为内置控件使用

控件包括控件的视觉效果以及操作和与控件交互的脚本逻辑。它可以由单个视觉元素或多个视觉元素的组合组成。例如,切换按钮控件包含三个元素

  • 文本标签
  • 框图像
  • 勾选标记图像
Toggle control
切换按钮控件

切换按钮控件的实现定义了控件的行为。它具有一个内部值,指示切换状态是真还是假。当值更改时,此逻辑会交替切换勾选标记图像的可见性。

您还可以将视觉元素组合在一起并修改其行为以创建自定义控件

要在 UI 中使用控件,请将其添加到视觉树中。

其他资源

视觉树
面板