删除一个物体的子物体,简单啊,循环遍历啊
上代码
运行!
诶?怎么还剩下两个?
因为,在循环运行当中,每当删除一个子物体,transform.childCount就会减1,而且正向循环中,是先删除最前面满足条件的,所以GetChild(i)中的i也是在不断的变化。
所以我们可以这样写
创建一个变量,每次执行一次,就index+1次,然后把transform.childCount少了的部分加回来,保持最开始的数值,使得循环次数完整。然后删除几个新的物体就会往前进几位。
当然这样太复杂了,最简单的方式是!
倒着来
我们加上限制条件一样没问题(网上流行的 DestroyImmediate(transform.GetChild(0).gameObject)带限制条件就不好用了)
当然不嫌麻烦的话还可以这样
网友评论