Version: 6000.3
语言: 中文
可绑定的数据类型和字段
绑定示例

绑定系统实现详细信息

下面是 UI Toolkit 绑定系统在实现级别的工作原理的说明。

绑定创建

当您调用Bind()方法,它异步同步和跟踪第一个值。这意味着value属性无法立即更新。这允许您为尚未添加到任何 UI 的层次结构设置绑定。

更改检测

绑定系统依赖于 Unity 对象的序列化数据来实现更改检测。

SerializedObject和一个或多个元素时,系统会定期轮询此对象以进行更改,但不是每帧,分两步:

  1. 系统序列化并轮询SerializedObject在本机代码中检测对序列化字节的任何更改。如果没有变化,它就会停止。
  2. 如果有更改,系统将比较属性和绑定元素上显示的值。如果需要,系统会更新显示的值。它对给定对象的每个特定属性到元素绑定执行此作。

作限制

某些绑定作可能太长,无法在单个帧中处理。如果在单个帧中处理绑定作,则 UI 可能会无响应。为了防止这种情况,这些绑定作可能会跨多个帧发生。例如,可能需要多次更新才能检测更改,具体取决于轮询的对象数。

其他资源

可绑定的数据类型和字段
绑定示例