//移除所有窗口 protected void DelAllPops() { if (m_id2pop.Count == 0) { return; } ClearStack(); //清空堆栈 IPop[] pops = DicUtil.ToValues <string, IPop>(m_id2pop); m_id2pop.Clear(); IPop pop; for (int i = 0; i < pops.Length; ++i) { pop = pops[i]; pop.DestroyRemove(); pop.Release(this); //GameObjUtil.Delete( pop ); } }