UGUI 事件命名空间
当我们需要使用 UGUI 中的事件的时候,需要在脚本内引入专有命名空间: using UnityEngine.EventSystems;----------------------------------
UI事件之Pointer指针事件========================================================1.指针事件介绍 指针:就是 PC 端的鼠标指针,以及移动端的触屏。 当我们在 PC 端移动鼠标与 UI 物体接触的时候,就会触发相应的指针事件。 比如说: 在很多 PC 端游戏的 UI 界面上,当你获得了一个新的物品,解锁了一个新的技 能的时候,你不知道它是什么,或者不知道它能干嘛。这个时候当你移动鼠标放 到该物品或者技能 UI 图标上,就会出现一个提示框,来给你介绍它是什么;当 你移开鼠标后,这个提示框就会消失。[见图] 在这个案例中,鼠标指针进入和离开,就是相应的指针事件。----------------------------------2.指针相关事件接口 1.五个指针相关事件接口 IPointerEnterHandler:指针进入事件处理器;一瞬间触发。 IPointerExitHandler:指针离开事件处理器;一瞬间触发。 IPointerDownHandler:指针按下事件处理器;一瞬间触发。 IPointerUpHandler:指针抬起事件处理器;一瞬间触发。 IPointerClickHandler:指针单击事件处理器;指针按下+抬起=单击---------------------------------- 2.事件接口扩展理解 Button 按钮组件和 Toggle 复选框组件,这两个组件都具备单击的功能,它们 的单击就是通过实现 IPointerClickHandler 这个接口实现的。[演示] 这些“事件接口”好比是“一个一个的机械零件”,而 UGUI 中的 UI 组件就是 这些零件拼接成的“机械成品”。在开发中我们也可以根据自己的功能需求,把 这些“机械零件”拿来,拼接实现自己的“机械成品”。========================================================
using UnityEngine;using UnityEngine.EventSystems;public class PointEventDemo1 : MonoBehaviour ,IPointerEnterHandler,IPointerExitHandler,IPointerDownHandler,IPointerUpHandler,IPointerClickHandler{ //实现接口 //点击(按下+抬起) void IPointerClickHandler.OnPointerClick(PointerEventData eventData) { print("OnPointerClick"); } //按下 void IPointerDownHandler.OnPointerDown(PointerEventData eventData) { print("OnPointerDown"); } //抬起 void IPointerUpHandler.OnPointerUp(PointerEventData eventData) { print("OnPointerUp"); } //进入 void IPointerEnterHandler.OnPointerEnter(PointerEventData eventData) { print("OnPointerEnter"); } //离开 void IPointerExitHandler.OnPointerExit(PointerEventData eventData) { print("OnPointerExit"); }}