Introduction to UI Toolkit
UI 工具包
UI 工具包是用于开发用户界面 (UI) 的特性、资源和工具的集合。您可以使用__ UI__(即用户界面,User Interface)让用户能够与您的应用程序进行交互。Unity 目前支持三种 UI 系统。更多信息
See in Glossary 工具包为 Unity 编辑器、运行时调试工具以及游戏和应用程序的运行时 UI 开发自定义 UI 和扩展。
UI 工具包的设计灵感来自标准 Web 技术。如果您有开发网页或应用程序的经验,您的知识是可以移植的,并且核心概念似曾相识。
注意:Unity 建议您将 UI 工具包用于新的 UI 开发项目。但是,Unity UI (uGUI) 和 IMGUI 适合特定用例,并且需要支持已弃用的项目。有关更多信息,请参阅 Unity 中 UI 系统的对比。
UI 系统
UI 工具包的核心是一种保留模式的 UI 的系统,基于公认的 Web 技术。它支持样式表以及动态和上下文事件处理。
UI 系统包括以下功能:
-
可视化树:由轻量级节点组成的对象图表,包含窗口或面板中的所有元素。视觉树定义了使用 UI 工具包构建的所有 UI。
-
控件:标准 UI 控件库,例如按钮、弹出窗口、列表视图和拾色器。您可以按原样使用、自定义这些控件,或创建自己的控件。
-
数据绑定:该系统将属性链接到修改其值的控件。
-
布局引擎:基于 CSS Flexbox 模型的布局系统。它根据布局和样式属性定位元素。
-
事件系统:该系统将用户交互传达给元素;例如,输入、触摸和指针交互、拖放操作和其他事件类型。该系统包括分发程序、处理程序、合成程序和事件类型库。
-
UI 渲染器:直接构建在 Unity 图形设备层之上的渲染系统。
-
编辑器 UI 支持:用于创建编辑器 UI 的一组组件。
-
运行时 UI 支持:用于创建运行时 UI 的一组组件。
UI 资源
使用以下资源类型,按照类似于开发网页应用程序的方式来构建 UI:
-
UXML 文档:HTML 和 XML 启发式标记语言定义了 UI 和可重用 UI 模板的结构。虽然您可以直接在 C# 文件中构建接口,Unity 建议尽可能使用 UXML 文档。
-
Unity 样式表 (USS):样式表将视觉样式和行为应用于 UI。它们类似于 Web 上使用的层叠样式表 (CSS),并支持标准 CSS 属性的子集。虽然您可以直接在 C# 文件中应用样式,Unity 建议尽可能使用 USS 文件。
UI 工具和资源
使用以下工具创建和调试界面,以及学习如何使用 UI 工具包:
-
UI 调试器:一种类似于 Web 浏览器调试视图的诊断工具。使用它可以探索元素的层级视图,并获取有关其底层 UXML 结构和 USS 样式的信息。您可以在 Window > UI Toolkit > Debugger 下的编辑器中找到它。
-
UI Builder:UI 工具能够直观地创建和编辑 UI 工具包资源,例如 UXML 和 USS 文件。
-
UI 示例:一个 UI 控件的代码示例库,您可以在编辑器中查看:Window > UI Toolkit > Samples。
Introduction to UI Toolkit