定义一个photoview的类继承与View

并实现view的构造方法

定义几个变量offsetXY 偏移量,downXY手指按下的坐标,lastoffsetXY最后一次的偏移量,currentPintId当前操作的手指Id

初始化

重写onDraw方法,并进行绘制

重写onTouchEvent方法,并返回true

单指操作的时候调用方法:event.getAction()
多指操作的时候调用方法:event.getActionMasked()
多指操作的几个重要方法
event.findPointerIndex(id):通过id获取index值。
event.getPointerId(index):通过index获知id值。
event.getPointerCount():获取总的point。
event.getActionIndex();
switch (event.getActionMasked()){
第一根手指按下触发 只会触发一次
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
只会触发一次,最后一根指头抬起时触发
case MotionEvent.ACTION_UP:
非第一根手指按下,触发
case MotionEvent.ACTION_POINTER_DOWN:
非最后一根指头抬起,触发
case MotionEvent.ACTION_POINTER_UP:
}
当 第一根手指按下时,记录当前手指落下的坐标,并记录这一根手指

当手指移动的时候,记录偏移量,刷新

当最后一根手指抬起时,记录偏移量

当非第一根手指落下时,记录当前手指,坐标以及偏移量

当非最后一根手指抬起时

在xml中绑定photoview