继承MonoBehaviour 的单例:
--------------
20220920更新:
public class StandbyCheckModule :MonoSingleton<StandbyCheckModule>
{
public override void OnSingletonInit()
{
Debug.Log(name + ":" + "OnSingletonInit");
}
}
using UnityEngine;
using QFramework;
public class StandbyCheckModule : MonoBehaviour, ISingleton
{
void ISingleton.OnSingletonInit() { }
public static StandbyCheckModule Instance
{
get { return MonoSingletonProperty<StandbyCheckModule>.Instance; }
}
}
--------------
MonoSingletonProperty 这个别打错了
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using QFramework;
using QF;
namespace Mota
{
public class PlayerInfo :MonoBehaviour,ISingleton
{
public string Name = "Monkey";
public static PlayerInfo Instance
{
get { return MonoSingletonProperty<PlayerInfo>.Instance; }
}
public void OnSingletonInit()
{
}
void Start()
{
Debug.Log(PlayerInfo.Instance.Name);
}
}
}
不继承 MonoBehaviour的单例:
public class PlayerAttributes : ISingleton
{
private PlayerAttributes() { }
public static PlayerAttributes Instance
{
get { return SingletonProperty<PlayerAttributes>.Instance; }
}
public void OnSingletonInit()
{
}
}