从 C# 加载 UXML
UQuery

UXML 元素参考

本主题将详细介绍 UnityEngine.Experimental.UIElementsUnityEditor.Experimental.UIElements 命名空间中提供的 UXML 元素。

基本元素

VisualElement

所有视觉元素的基类。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:任意数量的 VisualElement
  • 属性:
    • class:以空格分隔的名称列表
    • style:用于设置元素样式的 USS 指令
    • name:此元素的唯一字符串标识符
    • focus-index:在用 Tab 键移动时用于确定焦点顺序的整数;默认值为 -1,表示该元素不可聚焦
    • picking-modePositionIgnore;默认值为 Position
    • tooltip:鼠标悬停在元素上方时显示的字符串
    • slot-name:将此元素定义为字段 (slot)
    • slot:当元素位于 <Instance> 中时,移动该属性引用的字段内的元素
    • 也接受任何其他属性

BindableElement

可绑定到 SerializedProperty 的元素。属性的值和显示的值是同步的。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:任意数量的 VisualElement
  • 属性:
    • VisualElement 的所有属性
    • binding-path:此元素绑定到的属性的路径

实用功能

Box

VisualElement 类似,但在其内容周围绘制一个框。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:任意数量的 VisualElement
  • 属性:
    • VisualElement 的所有属性

TextElement

用于显示文本的元素。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性
    • text:元素显示的文本

Label

文本标签。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • TextElement 的所有属性

Image

显示图像。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性

IMGUIContainer

用于绘制 IMGUI 内容的元素。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性
      • focus-index 默认值为 0

Foldout

可通过开关按钮显示或隐藏内容的元素。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:任意数量的 VisualElement
  • 属性:
    • BindableElement 的所有属性

模板

Template

引用另一个可使用 Instance 元素进行实例化的 UXML 模板。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • name:此元素的唯一字符串标识符
    • path:要加载的 UXML 文件的路径

Instance

Template 的实例。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • template:要实例化的 Templatename

控件

Button

标准按钮。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • TextElement 的所有属性

RepeatButton

按下时反复执行某项操作的按钮。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • TextElement 的所有属性
    • delay:执行操作前的初始延迟(以毫秒为单位); 默认值为 0
    • interval:每次重复操作之间的间隔(以毫秒为单位); 默认值为 0

Toggle

开关按钮(复选框)。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • label:开关的文本标签
    • value:指示开关 on/off 状态的布尔值。

Scroller

滚动条。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性
    • low-value:滚动条的最小值
    • high-value:滚动条的最大值
    • directionHorizontalVertical;默认值为 Vertical
    • value:滚动条游标的位置

ScrollerButton

滚动条末尾的按钮。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性
    • delay:执行操作前的初始延迟(以毫秒为单位); 默认值为 0
    • interval:每次重复操作之间的间隔(以毫秒为单位); 默认值为 0

Slider

滑动条。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
    • low-value:滑动条的最小值
    • high-value:滑动条的最大值
    • directionHorizontalVertical;默认值为 Vertical
    • page-size:滑动条的页面大小
    • value:滑动条游标的位置

SliderInt

整数值的滑动条。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
    • low-value:滑动条的最小值
    • high-value:滑动条的最大值
    • directionHorizontalVertical;默认值为 Vertical
    • page-size:滑动条的页面大小
    • value:滑动条游标的位置

MinMaxSlider

让用户指定最小值和最大值的滑动条。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
    • low-limit:滚动条的最小值
    • high-limit:滚动条的最大值
    • min-value:滑动条游标的最小值
    • max-value:滑动条游标的最大值

EnumField

一个只能获取基础 Enum 中的字符串值的字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • type:必需,一个表示基础 Enum 的 C# 类型的字符串
    • value:一个表示字段值的字符串

MaskField

一个允许用户选择一组值的弹出菜单。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • choices:一个以逗号分隔的列表,最多包含 32 个选项,这些选项将在弹出菜单中显示
    • value:一个表示字段值的整数(32 位掩码)。

LayerField

一个允许用户选择一个的弹出菜单。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • value:一个表示字段值的整数(即选择的层编号)。

LayerMaskField

一个允许用户选择一组的弹出菜单。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • MaskField 的所有属性

TagField

一个允许用户选择一个标签的弹出菜单。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • value:一个表示字段值的字符串(即选择的标签名称)。

文本输入

TextField

一个可编辑的文本字段。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • text:字段的文本值
    • max-length:字段可包含的最大字符数。默认值 -1 表示对文本长度没有限制。
    • password:一个布尔值,指示应显示字段内容 (false,默认值)还是用 maskCharacter 字符显示。
    • mask-character:当 passwordtrue 时用于显示字段内容的字符。默认为字符 *
    • multiline:一个布尔值,指示文本字段的文本显示为多行 (true) 还是一行 - 忽略文本中的任何换行符(false,默认值)。

IntegerField

一个接受整数(32 位)值的文本字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • value:字段的值
    • text:字段的文本值
    • max-length:字段可包含的最大字符数。 默认值 -1 表示对文本长度没有限制。
    • password:一个布尔值,指示应显示字段内容 (false,默认值)还是用 maskCharacter 字符显示。
    • mask-character:当 passwordtrue 时用于显示字段内容的字符。默认为字符 *

LongField

一个接受长整型(64 位)值的文本字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • value:字段的值
    • text:字段的文本值
    • max-length:字段可包含的最大字符数。 默认值 -1 表示对文本长度没有限制。
    • password:一个布尔值,指示应显示字段内容 (false,默认值)还是用 maskCharacter 字符显示。
    • mask-character:当 passwordtrue 时用于显示字段内容的字符。 默认为字符 *

FloatField

一个接受单精度浮点值的文本字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • value:字段的值
    • text:字段的文本值
    • max-length:字段可包含的最大字符数。 默认值 -1 表示对文本长度没有限制。
    • password:一个布尔值,指示应显示字段内容 (false,默认值)还是用 maskCharacter 字符显示。
    • mask-character:当 passwordtrue 时用于显示字段内容的字符。 默认为字符 *

DoubleField

一个接受双精度浮点值的文本字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • value:字段的值
    • text:字段的文本值
    • max-length:字段可包含的最大字符数。 默认值 -1 表示对文本长度没有限制。
    • password:一个布尔值,指示应显示字段内容 (false,默认值)还是用 maskCharacter 字符显示。
    • mask-character:当 passwordtrue 时用于显示字段内容的字符。 默认为字符 *

Vector2Field

一组(两个)接受浮点值的文本字段, 用于编辑 Vector2 的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • x:X 坐标的值
    • y:Y 坐标的值

Vector2IntField

一组(两个)接受整数值的文本字段, 用于编辑 Vector2Int 的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • x:X 坐标的值
    • y:Y 坐标的值

Vector3Field

一组(三个)接受浮点值的文本字段, 用于编辑 Vector3 的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • x:X 坐标的值
    • y:Y 坐标的值
    • z:Z 坐标的值

Vector3IntField

一组(三个)接受整数值的文本字段, 用于编辑 Vector3Int 的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • x:X 坐标的值
    • y:Y 坐标的值
    • z:Z 坐标的值

Vector4Field

一组(四个)接受浮点值的文本字段, 用于编辑 Vector4 的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • x:X 坐标的值
    • y:Y 坐标的值
    • z:Z 坐标的值
    • w:W 坐标的值

RectField

一组(四个)接受浮点值的文本字段, 用于编辑矩形的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • x:左上角 X 坐标的值
    • y:左上角 Y 坐标的值
    • w:矩形的宽度
    • h:矩形的高度

RectIntField

一组(四个)接受整数值的文本字段, 用于编辑矩形的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • x:左上角 X 坐标的值
    • y:左上角 Y 坐标的值
    • w:矩形的宽度
    • h:矩形的高度

BoundsField

一组(六个)接受浮点值的文本字段, 用于编辑边界矩形的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • cx:中心 X 坐标的值
    • cy:中心 Y 坐标的值
    • cz:中心 Z 坐标的值
    • ex:范围 X 坐标的值
    • ey:范围 Y 坐标的值
    • ez:范围 Z 坐标的值

BoundsIntField

一组(六个)接受整数值的文本字段, 用于编辑边界矩形的值。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • px:中心 X 坐标的值
    • py:中心 Y 坐标的值
    • pz:中心 Z 坐标的值
    • sx:范围 X 坐标的值
    • sy:范围 Y 坐标的值
    • sz:范围 Z 坐标的值

复杂小部件

PropertyField

一个标签和一个用于编辑值的字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性
      • focus-index 默认值为 0
    • binding-path:此元素绑定到的属性的路径
    • label:字段的标签

ColorField

拾色器字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • value:作为 Color 的颜色值
    • show-eye-dropper:一个指示要显示(true,默认值)还是不显示 (false) 取色器的布尔值。
    • show-alpha:一个指示要显示(true,默认值)还是不显示 (false) Alpha 控件的布尔值
    • hdr:一个指示要使用高动态范围拾色器 (true) 还是普通拾色器(false,默认值)的布尔值

CurveField

一个曲线编辑器字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0

GradientField

一个渐变编辑器字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0

ObjectField

一个对象选择器字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • BindableElement 的所有属性
      • focus-index 默认值为 0
    • allow-scene-objects:一个指示可以(true,默认值)还是不可以 (false) 从场景中选择对象的布尔值

InspectorElement

在 Inspector 窗口中显示属性的元素。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:任意数量的 VisualElement
  • 属性:
    • BindableElement 的所有属性

工具栏

Toolbar

用于容纳工具栏项的容器。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:任何 VisualElement
  • 属性:
    • VisualElement 的所有属性

ToolbarButton

工具栏的按钮。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • Button 的所有属性

ToolbarToggle

工具栏的开关。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • Toggle 的所有属性

ToolbarMenu

工具栏的下拉菜单。菜单有一个向下的箭头。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • TextElement 的所有属性

ToolbarPopup

工具栏的弹出菜单。菜单有向上和向下的两个箭头。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • TextElement 的所有属性

ToolbarSearchField

工具栏的搜索字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性

ToolbarPopupSearchField

一个带有搜索选项弹出菜单的搜索字段。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • ToolbarSearchField 的所有属性

ToolbarSpacer

一个在工具栏按钮之间插入固定数量的空白的元素。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性

ToolbarFlexSpacer

在工具栏按钮之间插入任意数量的空白的元素。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性

视图和窗口

ListView

显示元素列表。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:无
  • 属性:
    • VisualElement 的所有属性
    • item-height:列表每一项的高度(以像素为单位)

ScrollView

一个带有水平和垂直滚动条的可滚动视图。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:任意数量的 VisualElement
  • 属性:
    • VisualElement 的所有属性
    • show-horizontal-scroller:一个指示是否显示水平滚动条的布尔值; 默认值为 false
    • show-vertical-scroller:一个指示是否显示垂直滚动条的布尔值;默认值为 false
    • horizontal-page-size:水平滚动条的页面大小值
    • vertical-page-size:垂直滚动条的页面大小
    • stretch-content-width:一个指示内容是否应拉伸到视图宽度的布尔值

PopupWindow

一个显示在其他内容之上的 UIElements 窗口。

  • 位于 UnityEngine.Experimental.UIElements
  • 允许的子元素:任意数量的 VisualElement
  • 属性:
    • TextElement 的所有属性

VisualSplitter

一个容器,允许用户通过拖动拆分条来调整其子项的大小。

  • 位于 UnityEditor.Experimental.UIElements
  • 允许的子元素:任意数量的 VisualElement
  • 属性:
    • VisualElement 的所有属性

  • 2018–11–02 页面已修订并只进行了有限的编辑审查
从 C&#35; 加载 UXML
UQuery
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961