Unity 游戏框架搭建 (十四) 优雅的QSignleton(零) QuickStart

好久不见 !之前想着让各位直接用 QFramework,但是后来想想,如果正在进行的项目直接使用 QFramework,这样风险太高了,要改的代码太多,所以打算陆续独立出来一些工具和模块,允许各位一个模块一个模块的进行更换,减少更换带来的风险。

QSingleton:

  之前有几篇文章介绍过单例模板在 Unity 中的几种实现。之后又参考了其他的单例库的实现,借鉴(chao)了它们的优点,借鉴了哪里有声明原作者。

快速开始:

  实现一个继承MonoBehaviour的单例类

  1. namespace QFramework.Example
  2. {
  3. [QMonoSingletonPath("[Audio]/AudioManager")]
  4. public class AudioManager : ManagerBase,ISingleton
  5. {
  6. public static AudioManager Instance
  7. {
  8. get { return QMonoSingletonProperty<AudioManager>.Instance; }
  9. }
  10.  
  11. public void OnSingletonInit()
  12. {
  13.  
  14. }
  15.  
  16. public void Dispose()
  17. {
  18. QMonoSingletonProperty<AudioManager>.Dispose();
  19. }
  20.  
  21.  
  22. public void PlaySound(string soundName)
  23. {
  24.  
  25. }
  26.  
  27. public void StopSound(string soundName)
  28. {
  29.  
  30. }
  31. }
  32. }

  结果如下:

14.优雅的QSignleton(零) QuickStart  - 图1

这样从头到尾都很!优!雅!

相关链接:

我的框架地址:https://github.com/liangxiegame/QFramework

教程源码:https://github.com/liangxiegame/QFramework/tree/master/Assets/HowToWriteUnityGameFramework/

QFramework &游戏框架搭建QQ交流群: 623597263

转载请注明地址:凉鞋的笔记http://liangxiegame.com/

微信公众号:liangxiegame

14.优雅的QSignleton(零) QuickStart  - 图2

如果有帮助到您:

如果觉得本篇教程对您有帮助,不妨通过以下方式赞助笔者一下,鼓励笔者继续写出更多高质量的教程,也让更多的力量加入 QFramework 。