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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM