Freewind @ Thoughtworks scala java javascript dart 工具 编程实践 月结 math python english [comments admin] [feed]

(2013-01-01) 多点触控是个难点

广告: 云梯:翻墙vpn (省10元) 土行孙:科研用户翻墙http proxy (有优惠)

OnTouchListener可用来监听屏幕的touch事件,事件数据使用MotionEvent类,它里面包含了以下数据:有几个点,每个点的坐标,判断当前行为(落下、移动、抬起)。

难点在于如何通过MotionEvent中的相关数据,准确判断当前的行为。如果不能准确判断,会导致所操作的图片出现闪动。

考虑这样一个操作:窗口上显示了一张图片,用户可以用手指移动、放大缩小、旋转它。既可以一个手指,又可以多个手指(两个或更多),如何让图片的处理既符合用户的期望,又很流畅呢?

比如移动图片,用户既可以一个手指,又可以多个。如果是多个的话,在移动过程中,手指之间的位置还可能发生变化。

比如放大缩小图片,如果用户使用多个手指,在放大时以哪些手指为准?

这篇文章非常好,一定要好好看:

http://android-developers.blogspot.com/2010/06/making-sense-of-multitouch.html

comments powered by Disqus