平时在项目中用到的手势:单击返回、双击缩放、单击长按、多指缩放
onTouch 手势
ACTION_DOWN 单击
ACTION_POINTER_DOWN 多指触碰
ACTION_MOVE 拖动
ACTION_UP 单指放开
ACTION_POINTER_UP 多指放开
onTouch事件重写
1. 注意事件冲突,例如单指长按点击和多指缩放。
解决方法: 使用event.getPointerCount()判断是不是单指或者自定义属性去判断是否在多指缩放。
2.在重写图片缩放时两点之间距离报错
问题原因,event.getX(1) 当手指数小于2的时候会报指针索引超出范围的错误。因为在你多指触碰然后逐个手指放开的时候都会一直触发着ACTION_MOVE,而拖动事件里在一直调用获取两点距离,当手指剩下一直的时候就会导致应用崩溃了
解决方法:在获取两点之间距离方法里面添加一个判断即可
![444c3c28eed830000467fc0d61d407be.png](https://img-blog.csdnimg.cn/img_convert/444c3c28eed830000467fc0d61d407be.png)
onTouch return true/false
return true 时 事件会被触发
return false 时 事件会被禁止