1
ズームを連続的に実装する方法を探しています。継続的に私はある位置にズームし、そこから別の位置にズームしたいということです。ブラウザのように。Android:連続ズーム機能を実装する方法
これまでのところ、私のaproachは1回のズームしか実行できず、次の前にリセットされます。
まず、指とその中間点の間の距離を計算します。
public boolean onTouchEvent(MotionEvent event) {
if(mode == ZOOM) {
float newDist = spacing(event);
scale = newDist/oldDist;
midPoint(midPoint, event);
invalidate();
}
メソッドinvalidateは、スケーリングを行うためにマトリックスに指示するonDrawを呼び出します。
protected void onDraw(Canvas canvas) {
matrix = canvas.getMatrix();
matrix.postScale(scale, scale, midPoint.x, midPoint.y);
canvas.setMatrix(matrix);
// drawing code
}
累積的なaproachがありますか?
いいえ私はアニメーションを望んでいません。私の質問はタッチイベントです。ズームはワンタッチで止まり、別の場所で次の画像に移動しますが、pdfビューアのように最後のズームレベルを続ける必要があります。 – strangeoptics