在Android中捏缩放多点触控功能

时间:2011-08-31 12:14:20

标签: android android-layout android-gesture

大家好,

我在很多网站上搜索Android多点触控(捏缩放)但找不到合适的答案,我找到了一个链接http://android-developers.blogspot.com/2010/06/making-sense-of-multitouch.html,他建议使用私有的ScaleGestureDetector mScaleDetector;但ScaleGesturesDetector需要android 2.2 froyo。然后我们将在2.2以下做些什么。 有没有示例代码或解决方案?

你的宝贵时间对我有所帮助..提前谢谢

2 个答案:

答案 0 :(得分:1)

由于早期Android设备上多点触控的支持程度不同(通常没有),我建议如果设备上没有ScaleGestureDetector,您只需提供屏幕上的放大/缩小功能的按钮。

此页面提供了一个很好的解释,说明如何检测某些API是否可用(即2.2及更高版本上的ScaleGestureDetector),如果不是,则允许您的应用程序优雅地降级(即如果按钮低于2.2) http://blog.radioactiveyak.com/2011/01/how-to-use-gyroscope-api-and-remain.html

答案 1 :(得分:1)

这应该可以扩展您链接到的博客中提供的代码(如果有多个触控手机运行2.2之前的Android)。如果您在介绍手势探测器之前采用示例,那么您将拥有所需的大部分内容。

至于它的实际理论,它应该不会太难。首先检测两个手指何时都在屏幕上。在第一种情况下,将这些手指的位置存储为起始位置。然后,对于仍有两个手指在屏幕上的每个动作,将当前位置与存储的起始位置进行比较,并相应地放大/缩小。

祝你好运!