/// <summary> /// 将界面从显示层移除 /// </summary> /// <param name="baseView"></param> private void RemoveChildFromLayer(BaseView baseView) { UILayer uiLayer = baseView.GetUILayer(); _currentViewList.Remove(baseView); if (_dicOpenView.ContainsKey(uiLayer)) { _dicOpenView[uiLayer].Remove(baseView); } baseView.transform.parent = null; baseView.gameObject.SetActive(false); }
/// <summary> /// 将界面添加到对应的显示层 /// </summary> /// <param name="baseView"></param> private void AddChildToLayer(BaseView baseView) { UILayer uiLayer = baseView.GetUILayer(); Transform parent = GetChildLayer(uiLayer); if (parent) { if (baseView.transform.parent == null) { baseView.transform.parent = parent; } baseView.gameObject.SetActive(true); //添加到对应集合中 _currentViewList.Add(baseView); if (!_dicOpenView.ContainsKey(uiLayer)) { _dicOpenView.Add(uiLayer, new List <BaseView>()); } _dicOpenView[uiLayer].Add(baseView); } }