EasyTouch摇杆插件使用中遇到的坑

来源:互联网 发布:背单词软件下载 编辑:程序博客网 时间:2024/06/05 09:33

遥感插件使用过程遇到的问题

原理:摇杆使用过程,首先需要Touch记录手势,存到Touch  fingers数组中,然后Update里面检测fingers[0](遥感只考虑第一个手势)是否为null来进行后续事件触发与回调.

以下是Touch中手势判断代码.当有手势对象时,会触发Touch事件,在Touch事件中检测遥感事件.

                        for (i = 0; i < 10; i++){if (fingers[i] != null){OneFinger(i);}}

遇到的问题:

1.当跳转界面时,NGUI跳转界面的加载,遥感手势信息会无法清除.出现遥感Touch和Joystick无法触发抬起事件.并且手势信息没有清除,下一次点击手势无法记录.跳转完界面后,第一次点击遥感会无效.

2.当遥感与NGUI使用同一层时,会出现NGUI界面的点击事件,会影响遥感的抬起事件.优先触发NGUI事件,遥感事件会中断.无法在松手时,触发抬起事件.

解决方案.

1.强制清除手势信息方法:在EasyTouch脚本中,最后添加方法,用来强制清除手势信息,以达到当手势信息无法清除时,可以调用清除.调用时通过Touch对象调用.

以下是清除手势代码.

public void ClearFingerInfo(){this.fingers[0] = null;}
2.使用遥感时,要单独分层.使用方法见下:使用栏第一条.

   使用

1.EasyTouch插件使用,要记录主摄像机和NGUI摄像机.

特别注意:遥感使用要单独分层.并在EasyTouch属性栏 NGUILayers选择新层.


2.EasyJoystick的触发和抬起事件.可以+=或者-=注册回调和移除回调.

        EasyJoystick.On_JoystickTouchStart += (方法);<span style="white-space:pre"></span>//点击事件        EasyJoystick.On_JoystickTouchUp += (方法);<span style="white-space:pre"></span>//抬起事件
3.Easyjoystick里面控制显示遥感图片的一些属性

    public bool showZone = true;<span style="white-space:pre"></span>//底图是否显示
    public bool showTouch = true;<span style="white-space:pre"></span>//移动的游标图片是否显示
    public bool showDeadZone = true;<span style="white-space:pre"></span>//游标外虚线圈是否显示
    public Color areaColor = Color.white;<span style="white-space:pre"></span>//底图颜色
    public Texture areaTexture;<span style="white-space:pre"></span>//底图图片
    public Texture touchTexture;<span style="white-space:pre"></span>//游标图片
    public Color touchColor = Color.white;<span style="white-space:pre"></span>//游标颜色
    public Texture deadTexture;<span style="white-space:pre"></span>//虚线圈图片










0 0
原创粉丝点击