- 给物体添加
Event Trigger
组件 - 在
Event Trigger
面板中,点击Add new Event Type
,选择Poniter Down
&&Pointer Up
Pointer Down
在按下时触发Pointer Up
在抬起时触发,从按下开始记录时间,便可以进行长按事件的触发
//长按时间记录
private float longPressTime;
private bool isLongPress;
private void Awake() {
isLongPress = false;
longPressTime = 0f;
}
private void Update() {
if(!isLongPress)
return;
longPressTime += Time.deltaTime;
if(longPressTime >= 2f && !RemindText.activeSelf)
{
Debug.Log("long press");
}
}
//绑定这个事件 true为按下, false为抬起
public void LongPress(bool press)
{
isLongPress = press;
if(press == false)
{
longPressTime = 0f;
}
}
一篇关于这个Event Trigger
的文章
Unity3D—UGUI—Button相关、点击、按下、抬起、长按事件