现在在做一个项目,里面有个基础功能,就是控件拖动,拖到不同区域后,此区域背景会变化,并且这个控件还有单击事件(拖动后不能出发单击事件)等.现在这个功能已经实现了,但是拖动时会卡,尤其是拖动很快的时候.这样用户体验就很差了,因为这是基础功能,现在必须得优化.但是问题就是怎么去优化???
拖动方法跟这个相似http://blog.csdn.net/aomandeshangxiao/article/details/7415618还有,因为这个控件有单击事件,onclick事件是在ontouch事件之后,根据ontouch的返回值决定是否调用的.
现在的问题就是如何去协调这两个事件???
因为手指只要轻轻一碰这个控件,就触发了ontouch,再加上现在屏的分辨率又高,轻轻一碰就move了几个像素.
我现在的解决办法就是当控件move的距离在20像素以内,就触发onclick.
但这又会加重之前说的"卡"的现象..有没有人遇到过这种问题,怎么解的??谢谢了!因为这是商业软件,不能贴出源码.

解决方案 »

  1.   

    把onclick事件放在up事件去出发就不会同时触发了。
    至于分辨率的问题暂时没有解决方案,而卡的问题是不是你把所有的耗时操作都放在OnDraw中了么?要改善的话,Ondraw的负担不要太大,将一些耗作进行分类。希望有帮助
      

  2.   


    把onclick事件放在up事件去出发就不会同时触发了。...什么意思???
      

  3.   

    控件移动放到move事件中,而点击事件在Up事件后才响应。