版本:Unity 6 (6000.0)
语言:英语
创建自定义检查器
对运行时 UI 的支持

查看数据持久性

查看数据持久性会保留与 视觉元素视觉树中的一个节点,它实例化或派生自 C# VisualElement 类。您可以设置外观样式、定义行为并在屏幕上显示它作为 UI 的一部分。 更多信息
查看 术语表 中的定义
相关联的 UI(用户界面) 允许用户与您的应用程序交互。Unity 目前支持三种 UI 系统。 更多信息
查看 术语表 中的定义
中的查看数据。查看数据是指用户界面状态,它不是 UI 底层数据模型的一部分。例如,查看数据可以包括滚动条的滚动位置或列表的选择。

查看数据持久性解决了 UI 查看数据在编辑器中某些事件期间不会持久存在的问题

  • 域重新加载,例如进入播放模式或更改脚本
  • 窗口关闭或重新打开,例如更改编辑器布局
  • 编辑器重启

注意:查看数据持久性仅在编辑器 UI 中有效。

要为支持查看数据持久性的元素启用查看数据持久性,请在编辑器窗口(EditorWindow 类型)中将查看数据键设置为唯一字符串。您可以在 UI Builder、UXML 或 C# 中设置它

  • 在 UI Builder 中,将键设置为元素的 检查器一个 Unity 窗口,它显示有关当前选定游戏对象、资产或项目设置的信息,允许您检查和编辑值。 更多信息
    查看 术语表 中的定义
    面板的 属性 部分中的 查看数据键 字段。
  • 在 UXML 中,使用 view-data-key 属性设置键。
  • 在 C# 中,使用 viewDataKey 属性设置键。

以下元素目前支持查看数据持久性

  • ScrollView一个 UI 控件,它在一个可视区域中显示一组大型控件,您可以使用滚动条来查看这些控件。 更多信息
    查看 术语表 中的定义

  • ListView

  • Foldout

  • TreeView

  • MultiColumnListView

  • MultiColumnTreeView

  • TabView 当您启用查看数据持久性时,这些元素会记住它们的内部查看状态

  • 对于 ScrollView,它会记住滚动位置。

  • 对于 ListView,它会记住选择。

  • 对于 Foldout,它会记住展开状态。

  • 对于 TreeView,它会记住选择。

  • 对于 MultiColumnTreeView 和 MultiColumnListView,它会记住选择、列的顺序、排序和宽度。

  • 对于 TabView,它会记住选定的选项卡。

要为 只读元素 启用查看数据持久性,请在父元素上设置查看数据键。

例如,ScrollView 有几个只读 Scroller 子元素。每个 Scroller 都被赋予一个在 ScrollView 元素内唯一的查看数据键。如果您为 Foldout 设置查看数据键,则 Foldout 的查看数据会持久存在。虽然 Scroller 有键,但它们的查看数据不会持久存在。您必须为其父 ScrollView 设置查看数据键才能启用持久性。Scroller 会将它们的查看数据键与父元素的查看数据键组合以创建唯一的全局查看数据键。

注意:目前,为查看数据持久性添加支持所需的 API 是内部的,这意味着您无法为 自定义控件 启用查看数据持久性。

其他资源

创建自定义检查器
对运行时 UI 的支持