当前位置:   article > 正文

Unity UI层级管理框架_unity3d 层级管理

unity3d 层级管理

1.为什么要使用UI层级管理框架?

根据我个人写的UI层级总结出:在一般UI界面的 Canvas 下有多个Panel,每个Panel下又有很多个需要操作的控件(Image、Text、inputField、Button)等,

因此要去管理如此多的事件处理非常繁琐,UI的层级结构刚好适合用一套框架来管理 :Canvas--->Panel--->(控件)

例:



第一步:给需要监听鼠标事件的控件添加监听脚本

用一个脚本代替 控件在Inspector中留下的OnClick方法(例:Button的OnClick需要去在脚本中寻找相对应的方法,如果脚本多了,寻找方法困难,而且不利于扩展)

因此我用了一个 OnTriggerEvent.cs 的脚本来执行相应的点击事件

  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.EventSystems;
  5. public class OnTriggerEvent : EventTrigger {
  6. //通过委托事件让UIScene来分配事件
  7. public delegate void ClickListener();
  8. public event ClickListener onBeginDrag;
  9. public event ClickListener onDrag;
  10. public event ClickListener onEndDrag;
  11. public event ClickListener onPointerClick;
  12. public event ClickListener onPointerUp;
  13. ///UI的相关监听//鼠标进入
  14. public override void OnBeginDrag(PointerEventData eventdata)
  15. {
  16. if (onBeginDrag != null)
  17. onBeginDrag();
  18. }
  19. public override void OnDrag(Pointer
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/761596
推荐阅读
相关标签
  

闽ICP备14008679号