如何在 Unity C# 中将 OnPointerDown 侦听器添加到滑块句柄?

Pas*_*mon 2 c# unity-game-engine

如何在 Unity GUI Slider 上添加侦听器以侦听滑块手柄上的鼠标按下事件?

先感谢您!

Kar*_*dux 5

Unity UI Slider已经在监听OnPointerDown,正如您在文档中看到的那样。

如果您想更改它的行为方式或向此方法添加一些自定义行为,您可以通过不同的方式进行:

1-向您的对象添加一个EventTrigger并选择OnPointerDown事件,如下所示:

添加到游戏对象的 EventTrigger 组件

2-声明一个从Slider类继承的新类并OnPointerDown()像这样覆盖该方法:

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;

public class CustomSlider: Slider
{
    public override void OnPointerDown(PointerEventData eventData)
    {
        base.OnPointerDown(eventData);

        // Your code here
    }
}
Run Code Online (Sandbox Code Playgroud)

请注意,第二种方法将检测所有滑块图形上的指针向下事件,而您可以将EventTrigger组件单独附加到句柄以仅检测此图形元素上的指针向下事件。

希望这可以帮助,