首页 > 解决方案 > PointerEnter 事件不会触发悬停状态

问题描述

我目前正在 Unity 中设计自定义库存。尽管OnClick方法适用于每个插槽,但方法OnHovered并不相同。后者是通过 EventTrigger 组件添加的。

https://i.imgur.com/hxQGzl1.png

OnHovered可以在链接到按钮的 InventorySlot 脚本中找到,它只包含一行打印,但是实际上什么也没打印。此外,我指定场景中有一个包含独立输入模块的 EventSystem。

public void OnHovered()
{
    Debug.Log("HOVERED");
}

我知道这是一些非常基本的东西,但我无法弄清楚问题出在哪里,谢谢!

标签: c#unity3d

解决方案


恐怕仅仅添加事件触发组件是不够的。您有两个选择: 1. 让您的库存槽脚本派生自 EventTrigger 并实现所需的方法。2. 将 IPointerEnter 接口实现添加到您的脚本并使用 OnPointerEnter 方法。

希望我很清楚祝你好运


推荐阅读