using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.EventSystems;
|
using UnityEngine.UI;
|
public class ButtonExtend : ButtonEx
|
{
|
public int intInfo = 0;
|
//public bool OnListen { get; set; }
|
public Action<int> OnOneParaClick;
|
|
public override void OnPointerClick(PointerEventData eventData)
|
{
|
base.OnPointerClick(eventData);
|
if (OnCheckDbClick())
|
{
|
return;
|
}
|
if (OnOneParaClick != null) OnOneParaClick(intInfo);
|
}
|
|
#region 双击
|
private float dbInterval = 0.3f;
|
private bool m_IsOnDb = false;
|
private bool m_FreezeDbClick = false;
|
public Action m_OnDbClick;
|
private bool OnCheckDbClick()
|
{
|
if (m_OnDbClick == null)
|
{
|
return false;
|
}
|
if (m_IsOnDb)
|
{
|
if (!m_FreezeDbClick)
|
{
|
m_OnDbClick();
|
m_IsOnDb = false;
|
m_FreezeDbClick = true;
|
}
|
}
|
else
|
{
|
m_FreezeDbClick = false;
|
m_IsOnDb = true;
|
}
|
TimeMgr.Instance.Register(this, OnDbCallback, dbInterval);
|
return true;
|
}
|
|
private void OnDbCallback(Component comp)
|
{
|
if (!m_FreezeDbClick)
|
{
|
if (OnOneParaClick != null) OnOneParaClick(intInfo);
|
}
|
m_FreezeDbClick = false;
|
m_IsOnDb = false;
|
}
|
#endregion
|
|
protected override void OnDisable()
|
{
|
if (Application.isPlaying)
|
{
|
TimeMgr.Instance.UnRegister(this);
|
}
|
}
|
}
|
|