【Android】Viewに対し、Matrixで位置を動かしつつ、回転・拡大縮小する中央点を変えたい
setPaddingで動かすことも出来ますが、
そうするとMatrixと組み合わせても中央点が左上になってしまうようなので、
全てMatrixで完結させる必要がありました。
Matrix mtrx = new Matrix();
targetImageView.setScaleType(ScaleType.MATRIX);
mtrx.preTranslate(-centerX, -centerY);//拡大縮小の中央点を変えたいため、一旦動かす
mtrx.postRotate(rotation);
mtrx.postScale(scaleX, scaleY);
mtrx.postTranslate(x,y);//最終的に動かしたい地点へ移動
targetImageView.setImageMatrix(mtrx);
targetImageView.invalidate();
でOKでした。