public void Refresh(WindowVM windowVm) { if (windowVm.IsShow) { windowVm.Refresh(); } }
public void Close(WindowVM windowVm) { if (windowVm.IsShow) { windowVm.Hide(); } }
public void Release(WindowVM windowVm) { windowVm.CleanUp(); loadedWindows.Remove(windowVm.Name); GameObject.Destroy(windowVm.UIView); UIContext.Instance.UILoader.UnloadUI(windowVm.UIView.gameObject); }
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); }