//全局特效节点 比如爆屏效果 在切换界面的时候销毁
List<GameObject> mObjectList = new List<GameObject>();
public void AddGameObject(GameObject go)
{
mObjectList.Add(go);
}
public void RemoveGameObject(GameObject go)
{
mObjectList.Remove(go);
}
public void ClearGameObjectList()
{
foreach(GameObject go in mObjectList)
{
UnityEngine.GameObject.DestroyImmediate(go);
}
mObjectList.Clear();
}
运行该程序时报上面的错误,检查代码发现是使用Foreach体内运用了对Collection的Remove方法(或者Add方法也会),虽然不太明白详细的原因,但是可以foreach改成for就可以了。