簡體   English   中英

UI Button 的 EventTrigger 不響應 OnPointerDown 或 OnPointerUp

[英]UI Button's EventTrigger doesn't respond to OnPointerDown nor OnPointerUp

我一直在嘗試制作一個按鈕,該按鈕在按下時執行一個操作,而在釋放時執行另一個按鈕。 我發現人們通常使用 EventTriggers 來做那種事情,但是盡管層次結構中有一個 EventSystem,但按鈕不會響應按下或釋放。 這是檢查器上按鈕的事件觸發器(稱為 MoveUp):

還有 Canvas 的 Inspector。將 Blocking Mask 更改為 Everything 並沒有改變任何東西。

也是 MainCamera Inspector。 添加了 Graphics Raycaster,因為我讀到它是需要的。

還有事件系統的 Inspector,即使我沒有改變任何東西:

這是 Canvas 層次結構。

還有一段按鈕腳本:

有誰知道為什么會這樣? 希望我已經透露了足夠的細節。 提前致謝!

您的設置存在一些問題。

Graphics Raycaster 應該將 Blocking Mask 設置為 Everything(默認)。

您可以移除 Physics 2D Raycaster。 Graphics Rayctaser 是您用於 UI 光線投射的工具。

您可以從 ButtonCode mono 行為中刪除 IPointerClick 處理程序。 事件觸發器組件實現所有必需的接口,並調用 ButtonCode 組件中的方法。

如果你遵循它,你應該能夠與你的按鈕進行交互。

終於找到問題了,受Milan的回答啟發,我嘗試檢查按鈕是否可點擊。 但我發現不是。 因此,我做了一些研究,發現您可以在玩游戲時查看檢查器中事件系統的底部,以找出您在 UI 上單擊的位置。 原來我有一個帶有 Rect Transform 的文本,它太大了,以至於超過了按鈕! 感謝 MarkSouls 和 Milan Egon Votrubec 回答這個問題!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM