2015-10-05 133 views
2

我在停止屏幕触摸事件时遇到问题,我有一个按钮,一旦我点击了UI按钮,它仍然检测到我的屏幕上有触摸事件,我该如何停止使我的屏幕触摸事件从这样做?提前致谢。Unity持续触摸检测

这里是我的触摸屏代码:

for (int i = 0; i < Input.touchCount; i++) { 

    if (myTouch [i].phase == TouchPhase.Began) { 

    } else if (myTouch[i].phase == TouchPhase.Moved) { 

    } else if (myTouch [i].phase == TouchPhase.Ended) { 
     // RUN TOUCH FUNCTION HERE 
    } 
} 

,并在我的按钮:

public void PauseGame(){ 

    //DO Pause game here 

} 
+0

你是如何实现按钮? – Droppy

+0

这是在画布上,它是onClick() – VonnCC

+0

所以它使用NGUI API? – Droppy

回答

2

您可以简单的创建布尔变量,如 “isTouchActive” 设置为,比在你的按钮逻辑改变它的状态是这样的:
isTouchActive = !isTouchActive;
在触摸逻辑只是检查这个变量,如:

if(isTouchActive) 
{ 
for (int i = 0; i < Input.touchCount; i++) 
{ 

    if (myTouch [i].phase == TouchPhase.Began) { 

    } else if (myTouch[i].phase == TouchPhase.Moved) { 

    } else if (myTouch [i].phase == TouchPhase.Ended) { 
     // RUN TOUCH FUNCTION HERE 
    } 
} 
} 
+1

这工作,谢谢,显然它仍然检测到开始和移动阶段。 – VonnCC