/// <summary> /// 打开指定窗口,使用指定视图控制器 /// </summary> /// <param name="winId"></param> /// <param name="ctrl"></param> public static void OpenWindow(WindowID winId, IView ctrl = null) { try { if (CtrlManager.mDicOpenCtrls.ContainsKey(winId)) { if (winId == WindowID.TipView) { CtrlManager.OnOpenWindow(new OpenWindowEventArgs(true, winId.ToString(), CtrlManager.mDicOpenCtrls[winId].uiWindow)); } } else { IView view = ctrl; if (view == null) { view = CtrlManager.GetViewInstance(winId); } view.WinId = winId; CtrlManager.mDicWindCtrls[winId] = view; UIManager.Instance.OpenWindow(view.WinId.ToString(), view.WinResCfg); } } catch (Exception e) { ClientLogger.LogException(e); } }