Android 如何使用多点触控实现夹点缩放和平移?

Android 如何使用多点触控实现夹点缩放和平移?,android,zooming,multi-touch,pan,Android,Zooming,Multi Touch,Pan,首先,我应该说我的应用程序已经有了pinch zoom,它可以完美地工作,而且它也有平移功能,但是这个平移功能可以在单点触摸下工作,我想让这两个功能都可以在多点触摸下工作。我的意思是,若用户做捏手势缩放工作应该做,若用户移动两个手指在同一个方向,然后平移工作将完成。我尝试使用阈值方法测量手指之间的距离,并将距离与之前的距离进行比较,如果距离之间的差异小于阈值,则将其作为平移,如果差异大于阈值,则将其作为缩放。这种方法虽然有效,但并不一致。所以我来这里是为了寻求更聪明、更顺畅的方法来完成这项工作

首先,我应该说我的应用程序已经有了pinch zoom,它可以完美地工作,而且它也有平移功能,但是这个平移功能可以在单点触摸下工作,我想让这两个功能都可以在多点触摸下工作。我的意思是,若用户做捏手势缩放工作应该做,若用户移动两个手指在同一个方向,然后平移工作将完成。我尝试使用阈值方法测量手指之间的距离,并将距离与之前的距离进行比较,如果距离之间的差异小于阈值,则将其作为平移,如果差异大于阈值,则将其作为缩放。这种方法虽然有效,但并不一致。所以我来这里是为了寻求更聪明、更顺畅的方法来完成这项工作


PS:我的收缩缩放代码来自

我能想到的最佳方法是使用移动方向。如果两个手指向不同方向移动,则仅激活缩放。但如果它们朝同一方向移动,则平移并基于阈值检查缩放。这应该增加一些一致性