当前位置:   article > 正文

Unity 3D 开发--UI管理框架_unity3d panel

unity3d panel

一、UI基类

一般情况下都是用Panel做容器来放各种控件的,一个Panle相当一个UI小界面,然后做成Prefab进行加载,所有界面都有载入载出功能,有的可能还有等待和恢复的,适合建立一个UI基类,然后各个子界面继承。

  1. public abstract class WUIBasePanel : MonoBehaviour
  2. {
  3. public abstract void OnEnter();
  4. public abstract void OnExit();
  5. public abstract void OnPause();
  6. public abstract void OnResume();
  7. }

二、UI子类

每个UI子界面都继承基类,然后实现各个方法,加载的时候可以在OnEnter()方法做一些显示动画或一些状态的改变等,OnExit()里可以做消失动画和一些关闭界面需要做的操作等。为了方便统一启用和禁用管理都添加CanvasGroup组件,也可以用来做隐藏和显示。

  1. public class WUIPanel1 : WUIBasePanel
  2. {
  3. private CanvasGroup canvasGroup;
  4. public override void OnEnter()
  5. {
  6. if (canvasGroup == null)
  7. {
  8. canvasGroup = GetComponent<CanvasGroup>();
  9. }
  10. canvasGroup.blocksRaycasts = true;
  11. gameObject.SetActive(true);
  12. }
  13. public o
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/761521
推荐阅读
相关标签
  

闽ICP备14008679号