using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class chuping : MonoBehaviour
{
public Text LeftRightTips; //左右划屏
public Text UpDownTips; //上下划屏
public Text DoubleClickTips; //双击
private Vector2 DeltaArea; //二维向量,滑屏区域
private bool BoolSecondClick; //是否为第二次点击
private float FloFirstTime = 0f; //第一次点击时间
private float FloSecondTime = 0f; //第二次点击时间
// Use this for initialization
void Start()
{
//初始化,测试数值
DeltaArea = Vector2.zero;
}
// Update is called once per frame
void Update()
{
Debug.Log("aaa");
/* 手指离开屏幕 */
//Input.touchCount是静态整形变量,当一只手指接触到屏幕时返回1,二只手指返回2,以此类推。
if (Input.touchCount == 1 && (Input.GetTouch(0).phase == TouchPhase.Ended))
{
DeltaArea = Vector2.zero;
//DoubleClickTips.text = ""; //如果手指离开屏幕,双击效果消失
}
/* 识别手指滑屏 */
if (Input.touchCount == 1 && (Input.GetTouch(0).phase == TouchPhase.Moved))
{
DeltaArea.x += Input.GetTouch(0).deltaPosition.x; //不断获取手指触屏时x,y轴的变化量并赋值给滑屏区域
DeltaArea.y += Input.GetTouch(0).deltaPosition.y;
if (DeltaArea.x > 150)
{
LeftRightTips.text = "右滑屏";
}
else if (DeltaArea.x < -150)
{
LeftRightTips.text = "左滑屏";
}
if (DeltaArea.y > 150)
{
UpDownTips.text = "上滑屏";
}
else if (DeltaArea.y < -150)
{
UpDownTips.text = "下滑屏";
}
}
/* 手指双击识别*/
if (Input.touchCount == 1 && (Input.GetTouch(0).phase == TouchPhase.Began))
{
FloSecondTime = Time.time;
if (FloSecondTime - FloFirstTime > 0.02F && FloSecondTime - FloFirstTime < 0.3F)
{//当第二次点击与第一次点击的时间间隔在0.02秒至0.3秒之间时
DoubleClickTips.text = "双击了屏幕!";
}
else
{
DoubleClickTips.text = "单击了屏幕!";
}
FloFirstTime = Time.time; //记录时间
}
}
}
unity双击
猜你喜欢
转载自blog.csdn.net/qq_38513810/article/details/137855523
今日推荐
周排行