【UGUI】如何实现Button交互变大的效果

        在Unity中,可以通过添加脚本来实现鼠标放在Button上时Button变大的效果。

        首先,选中Button对象,在Inspector面板中添加一个“Event Trigger”组件。在“Event Trigger”组件中,添加两个事件:PointerEnter和PointerExit。

        接着,为Button添加一个脚本,在脚本中实现当鼠标指针进入Button区域时,Button的大小增加,当鼠标指针离开Button区域时,Button的大小恢复原来大小,代码如下:

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

public class ButtonResize : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler
{
    private Vector3 originalScale;

    // 获取Button的初始大小
    private void Start()
    {
        originalScale = transform.localScale;
    }

    // 当鼠标指针进入Button区域时,将Button的大小增加
    public void OnPointerEnter(PointerEventData eventData)
    {
        transform.localScale = originalScale * 1.2f;
    }

    // 当鼠标指针离开Button区域时,将Button的大小恢复原来大小
    public void OnPointerExit(PointerEventData eventData)
    {
        transform.localScale = originalScale;
    }
}

        将该脚本添加到Button对象上,即可实现鼠标放在Button上时Button变大的效果。

        如果小伙伴们添加了“Event Trigger”组件并添加了PointerEnter和PointerExit事件,但是在脚本中找不到OnPointerEnter和OnPointerExit函数,那么很可能是因为脚本没有正确地实现了对应的接口。确保你的脚本类声明了正确的接口,应该声明为 IPointerEnterHandler 和 IPointerExitHandler。这两个接口包含了OnPointerEnter和OnPointerExit两个函数。

猜你喜欢

转载自blog.csdn.net/m0_51942776/article/details/130606398