在使用UGUI开发项目的过程中,我们会大量的使用ListView这个组件创建各种列表,ListView的添加子节点的操作这里不多说,这里着重说一下清理所有子节点的操作。
public void ClearAllChild(Transform transform)
{
if (transform == null)
{
return;
}
for (int i = 0; i < transform.childCount; i++)
{
GameObject.Destroy(transform.GetChild(i).gameObject);
}
transform.DetachChildren();
}
这个过程中切记添加transform.DetachChildren(),使父节点分离子节点,这样在当前帧中listview已经清空,否则listview会在当前帧结束才回清空。