1.实现长按功能:当用户按下后0.1s内不会有变化,0.1s后变化然后和普通按同时还原。如下图(橘黄色IsDelaying区域为长按,红色为正常按击,紫色区域为判断双击区域)
增加MyButton代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MyButton {
/// <summary>
/// 三种状态(缺省为false)
/// </summary>
public bool IsPressing = false;
public bool OnPressed = false;
public bool OnReleased = false;
public bool IsExtending = false;//判断双击区域
public bool IsDelaying = false;
public float extendingDuration = 1.0f;//双击判断区域时常
public float delayingDuration = 1.0f;//长按时间时长
private bool curState = false; //目前的状态
private bool lastState = false; //前一次状态
private MyTimer extTimer = new MyTimer();
private MyTimer delayTimer = new MyTimer();