包含此页的版本:
不含此页的版本:
下面是 UI Toolkit 绑定系统在实现级别的工作原理的说明。
当您调用Bind()方法,它异步同步和跟踪第一个值。这意味着value属性无法立即更新。这允许您为尚未添加到任何 UI 的层次结构设置绑定。
绑定系统依赖于 Unity 对象的序列化数据来实现更改检测。
在SerializedObject和一个或多个元素时,系统会定期轮询此对象以进行更改,但不是每帧,分两步:
SerializedObject在本机代码中检测对序列化字节的任何更改。如果没有变化,它就会停止。某些绑定作可能太长,无法在单个帧中处理。如果在单个帧中处理绑定作,则 UI 可能会无响应。为了防止这种情况,这些绑定作可能会跨多个帧发生。例如,可能需要多次更新才能检测更改,具体取决于轮询的对象数。