using UnityEngine; namespace Continentis { public abstract class UIPageBase : UIElementBase { public UIManagerBase uiManager; public CanvasGroup canvasGroup; protected override void Awake() { base.Awake(); Initialize(transform.parent.GetComponent()); } public virtual void Initialize(UIManagerBase sourceManager) { if (sourceManager != null) { this.uiManager ??= sourceManager; } } public virtual void Show() { uiManager.uiPageList.Add(this); gameObject.SetActive(true); } public virtual void Close() { uiManager.uiPageList.Remove(this); gameObject.SetActive(false); } } }