按钮实现按下缩小,松开复原功能:
using UnityEngine.EventSystems;
using System.Collections;
using UnityEngine;
public class OnButtonPressed : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IPointerExitHandler
{
private RectTransform rectTransform;
private float delay = 0.2f;// 延迟时间
private bool isDown = false;// 按钮是否是按下状态
private float shrinkSpeed = 7f;//缩小速度
private float recoverSpeed;//复原速度
void Start()
{
recoverSpeed = 1.25f * shrinkSpeed;
rectTransform = GetComponent<RectTransform>();
}
void Update()
{
// 如果按钮是被按下状态
if (isDown)
{
if (Mathf.Abs(0.85f - rectTransform.localScale.x) < 0.02f)
{
rectTransform.localScale = new Vector3(0.85f, 0.85f, 1);
}
else
{
rectTransform.localScale