Java 在android中放大后如何移动图像

Java 在android中放大后如何移动图像,java,android,pinchzoom,zooming,Java,Android,Pinchzoom,Zooming,我只需要你的帮助,告诉我们如何在缩放图像后移动图像。我已经做了所有其他的事情,但只是在缩放和恢复正常大小时遇到了移动图像的问题?请帮帮我 这是我的密码 MainActivity.java package com.example.saeed.zooming; import android.app.Activity; import android.content.Intent; import android.content.IntentFilter; import android.graphic

我只需要你的帮助,告诉我们如何在缩放图像后移动图像。我已经做了所有其他的事情,但只是在缩放和恢复正常大小时遇到了移动图像的问题?请帮帮我 这是我的密码

MainActivity.java

package com.example.saeed.zooming;

import android.app.Activity;
import android.content.Intent;
import android.content.IntentFilter;

import android.graphics.Bitmap;
import android.graphics.Matrix;

import android.os.BatteryManager;
import android.os.Bundle;

import android.view.Menu;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.ScaleGestureDetector;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;

import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import java.util.ArrayList;
import java.util.Set;

public class MainActivity extends Activity {
    private ImageView iv;
    private Matrix matrix = new Matrix();
    private float scale = 1f;
    private ScaleGestureDetector SGD;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        iv=(ImageView)findViewById(R.id.imageView);
        SGD = new ScaleGestureDetector(this,new ScaleListener()); 
    }

    public boolean onTouchEvent(MotionEvent ev) {
        SGD.onTouchEvent(ev);
        return true;
    }

    private class ScaleListener extends ScaleGestureDetector.

            SimpleOnScaleGestureListener {
        @Override
        public boolean onScale(ScaleGestureDetector detector) {
            scale *= detector.getScaleFactor();
            scale = Math.max(0.1f, Math.min(scale, 5.0f));

            matrix.setScale(scale, scale);
            iv.setImageMatrix(matrix);
            return true;
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.

        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}
请试一试。它将满足您的需要此库为您提供以下功能

旋转 缩放图像缩放 移动
是否要像浮动按钮一样移动图像??这可能会帮助你Noop我只有在手指上执行缩放时才能移动图像..你想要缩放效果还是在缩放后移动图像?将你的ImageView嵌套在HorizontalScrollView和ScrollView中。我会检查并尝试它。你得到答案了吗?