UGUI源码(四)

下图转自:https://blog.csdn.net/qq_28820675/article/details/106313594

 Canvas.willRenderCanvases->CanvasUpdateRegistry.PerformUpdate->遍历布局列表(在UI组件的SetDirty方法中将当前UI组件添加进布局列表),执行Rebuild方法计算子物体位置和大小。

以上组件在SetDirty中调用了LayoutRebuilder.MarkLayoutForRebuild(rectTransform);//使用布局

LayoutRebuilder.ForceRebuildLayoutImmediate强制布局(不使用脏标记),但需要隔一帧调用才行。

原文地址:https://www.cnblogs.com/mcyushao/p/13995761.html