找了下原因,是因为当你按着EasyJoystick时触发EasyTouch的函数识别你是否按下时识别的是你按着EasyJoystick的手指,所以无法识别
解决办法:
在脚本EasyTouch.cs里改多一个判断:
public static bool IsRectUnderTouch( Rect rect, bool guiRect=false){
bool find=false;
for (int i=0;i<10;i++){
if ( EasyTouch.instance.fingers[i]!=null && (EasyTouch.instance.fingers[i].position.x > Screen.width/2)){//这里添加了后半部分的识别,//因为我的按钮在左边,不识别右边的手指
if (guiRect){
rect = new Rect( rect.x,Screen.height-rect.y-rect.height,rect.width,rect.height);
}
Debug.LogError("IsRectUnderButton " + i + " "+ EasyTouch.instance.fingers[i].position);
find = rect.Contains( EasyTouch.instance.fingers[i].position);
break;
}
}
return find;
}
添加了后半部分的识别,因为我的按钮在左边,不识别右边的手指
本文解决了在使用EasyJoystick时遇到的触控识别问题,通过修改EasyTouch.cs脚本来实现仅识别左侧手指触摸,确保右侧手指不会干扰。
4060

被折叠的 条评论
为什么被折叠?



