[英]Unity and C# click/touch over specific UI element check
我有一个代码,如果我开始单击或触摸屏幕并拖动特定距离,它会执行某些操作。 我想检查它何时位于特定区域上(让我们说说UI,例如canvas)。 主要目标是让屏幕的上半部分对单击和触摸做出反应。
我试图通过创建新的Rect来做到这一点。 这可以,但是我不能在屏幕的上部制作矩形(现在它在屏幕的下部)。 我可能会丢失一些东西,但是下面的代码应该在屏幕的上部创建rect,不是吗?
if (Input.GetMouseButtonDown(0))
{
Rect bounds = new Rect(0, 0, Screen.height / 2, Screen.width);
if (Input.GetMouseButtonDown(0) && bounds.Contains(Input.mousePosition))
{
Debug.Log("Touchableee!");
TouchableArea = true;
}
if (TouchableArea == true)
{
tap = true;
isDraging = true;
startTouch = Input.mousePosition;
TouchableArea = false;
}
}
else if (Input.GetMouseButtonUp(0))
{
isDraging = false;
Reset();
}
任何想法都欢迎,谢谢...
您将在屏幕的底部启动Rect,因此为什么它在屏幕的下半部分。
参数
x测量矩形的X值。
y测量rect的Y值。
width矩形的宽度。
height矩形的高度。
以下应该为您工作:
Rect bounds = new Rect(0, Screen.height, Screen.height / 2, Screen.width);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.