单例日常使用模板
单例
单例是日常使用中不可避免的工具类,基本大多项目都需要使用到。本文写一个直接拿来使用的单例就可以。
使用方法

技术细节
代码细节
using UnityEngine;
	public class Singleton<T> : MonoBehaviour where T : Singleton<T> {
		private static T instance;
		public static T Instance {
			get {
				return instance;
			}
		}
		public static bool IsInitialized {
			get {
				return instance != null;
			}
		}
		protected virtual void Awake () {
			if (instance != null) {
				Debug.LogErrorFormat ("Trying to instantiate a second instance of singleton class {0}", GetType ().Name);
			} else {
				instance = (T)this;
			}
		}
		protected virtual void OnDestroy () {
			if (instance == this) {
				instance = null;
			}
		}
	}
 
小结
若需要其他功能可自行扩展。