Unity Button延迟功能

匿名 (未验证) 提交于 2019-12-02 23:57:01

有时候Button点下去不是要求立即反应的,而是先有个特别短的动画,再反应。

 

实现:

继承Button,然后重写一下OnPointerClick,利用协程来延迟。

using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; using UnityEngine.EventSystems; using UnityEngine.UI;  public class MyButton : Button {     [Header("执行onClick的延迟时间")]     public float delayTime = 1f;      public override void OnPointerClick(PointerEventData eventData)     {         StartCoroutine(Click());     }      IEnumerator Click()     {         Debug.Log("动画...");         yield return new WaitForSecondsRealtime(delayTime);         onClick.Invoke();     } }
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!