今天发现手动刷新LayoutGroup这类组件(HorizontalLayoutGroup、VerticalLayoutGroup、GridLayoutGroup)的方法。
GetComponent<LayoutGroup>().enabled = true;
LayoutRebuilder.ForceRebuildLayoutImmediate((RectTransform)transform);
GetComponent<LayoutGroup>().enabled = false;
在编辑器禁用LayoutGroup组件,代码中启用——强制刷新——禁用,这样就可以只刷新一次布局,避免实时刷新带来的性能损耗。大概如此,如有错误望指正。