zoukankan      html  css  js  c++  java
  • 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");
        }
    }
  • 相关阅读:
    js 每个月有多少天算法
    js 树的操作
    画线
    程序员如何防止脑疲劳
    汉字求出拼音缩写
    datagird 多行外于编辑状态
    overflow: hidden 失效
    CSS 相对/绝对(relative/absolute)定位系列(三)
    display:inlineblock在Chrome与FF下导致的间隙
    css ul li 的使用及浏览器兼容问题
  • 原文地址:https://www.cnblogs.com/madinglin/p/8470838.html
Copyright © 2011-2022 走看看