Files
2025-07-03 15:06:34 +08:00

54 lines
816 B
C#

using UnityEngine;
namespace XUI
{
public class SingleUiBehaviour<T> : UIBehaviour where T : SingleUiBehaviour<T>
{
public static T Ins { get; private set; }
public override void OnUIShow(params object[] args)
{
Ins = (T)this;
base.OnUIShow(args);
}
public override void OnUIClose()
{
base.OnUIClose();
if (Ins == this)
{
Ins = null;
}
}
}
public class UIBehaviour : MonoBehaviour, IUIPoolBehaviour, IUIStackBehaviour
{
// public void OnUIShowArgs(xxx){}
public virtual void OnUISpawned()
{
}
public virtual void OnUIDespawn()
{
}
public virtual void OnUIShow(params object[] args)
{
}
public virtual void OnUIClose()
{
}
public virtual void OnUIPause(bool cover)
{
}
public virtual void OnUIResume(bool fromCover)
{
}
}
}