通过该类与canvas配合可以快速实现,单指平移,双指缩放,双指旋转效果。
使用示例:
mHelper = new CommonTouchHelper(mTransformMatrix, false);
public boolean onTouchEvent(MotionEvent event) {
return mHelper.onTouchEvent(event, this::invalidate, this::needRest);
}
@Override
protected void onDraw(Canvas canvas) {
//绘制图片
canvas.drawColor(Color.BLACK);
if (mBitmap != null) {
canvas.save();
canvas.clipRect(mCropRectF);
canvas.concat(mTransformMatrix);
canvas.drawBitmap(mBitmap, 0, 0, mPaint);
canvas.restore();
}
}
完整代码在:GithHub