UGUI事件之Pointer指针事件

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");
    }
}

 

转载于:https://www.cnblogs.com/madinglin/p/8470838.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值