Example #1
0
    public void CloseWindow(string winId, BaseCloseWindowParams param = null)
    {
        WindowController theWinCtrl;

        if (_openedWindowDict.TryGetValue(winId, out theWinCtrl))
        {
            foreach (var p in _plugins)
            {
                p.OnWillCloseWindow(theWinCtrl, theWinCtrl.Window);
            }


            //这里抽象不同打开/关闭策略
            theWinCtrl.Window.gameObject.SetActive(false);

            theWinCtrl.OnWindowClosed(param);

            _openedWindowDict.Remove(winId);


            foreach (var p in _plugins)
            {
                p.OnDidCloseWindow(theWinCtrl, theWinCtrl.Window);
            }
        }
        else
        {
            Debug.LogWarning("window not open state:" + winId);
        }
    }
Example #2
0
 public virtual void OnWindowClosed(BaseCloseWindowParams param)
 {
 }
Example #3
0
    public override void OnWindowClosed(BaseCloseWindowParams param)
    {
        base.OnWindowClosed(param);

        Debug.Log("main window created");
    }