Esempio n. 1
0
 public void Refresh(WindowVM windowVm)
 {
     if (windowVm.IsShow)
     {
         windowVm.Refresh();
     }
 }
Esempio n. 2
0
 public void Close(WindowVM windowVm)
 {
     if (windowVm.IsShow)
     {
         windowVm.Hide();
     }
 }
Esempio n. 3
0
 public void Release(WindowVM windowVm)
 {
     windowVm.CleanUp();
     loadedWindows.Remove(windowVm.Name);
     GameObject.Destroy(windowVm.UIView);
     UIContext.Instance.UILoader.UnloadUI(windowVm.UIView.gameObject);
 }
Esempio n. 4
0
        public async Task <WindowVM> OpenAsync(string uiName)
        {
            if (!loadedWindows.TryGetValue(uiName, out var window))
            {
                loadedWindows[uiName] = WindowVM.Default;
                var goUI = await UIContext.Instance.UILoader.LoadUI(uiName);

                CLog.UI.Assert(goUI != null, "goUI == null,uiName = " + uiName);
                goUI.name = uiName;
                var uiView = goUI.GetComponent <UIView>();
                window = new WindowVM();
                var windowRoot = GetWindowRoot(window.GetWindowsCatalog());
                goUI.transform.SetParent(windowRoot, false);
                window.Name = uiName;
                window.Init(uiView);
                loadedWindows[uiName] = window;
            }

            window.Show();
            return(window);
        }