在Android中的TouchImageView中水平和垂直滚动ImageView?

时间:2014-02-01 15:58:51

标签: java android scrollbar touchimageview

这是ZOOM IN AND ZOOM out TouchImageView。这是可用的代码ZOOM IN AND ZOOM OUT CUSTOM FUNCTION IN IMAGEVIEW ,用于放大和缩小它成功缩放和缩小按钮单击上的图像但是我无法在缩放后滚动.I我在这里看到了scrollView部分MeahdiIjaz Answer。有人可以在TouchImageView中调整水平和垂直滚动的部分吗?

有人可以在这里帮助我TouchImage View

这是跟随“MikeOrtiz”答案之后的logcat错误每当我尝试使用我的文件缩放时我的应用程序崩溃用户可以触摸图像我该怎样才能避免这个问题?我只是想通过zoomin和zoomout按钮进行缩放,但如果其他人触摸图像,那么它应该忽略该动作而不是崩溃app

  

02-03 21:09:00.880:E / AndroidRuntime(14290):致命异常:主要   02-03 21:09:00.880:E / AndroidRuntime(14290):java.lang.UnsupportedOperationException:Scale必须大于minScale且小于maxScale   02-03 21:09:00.880:E / AndroidRuntime(14290):at com.example.imagetouchview.TouchImageView1.setZoom(TouchImageView1.java:369)   02-03 21:09:00.880:E / AndroidRuntime(14290):at com.example.imagetouchview.TouchImageView1.setZoom(TouchImageView1.java:354)   02-03 21:09:00.880:E / AndroidRuntime(14290):at com.example.imagetouchview.MainActivity $ 1.onClick(MainActivity.java:49)   02-03 21:09:00.880:E / AndroidRuntime(14290):在android.view.View.performClick(View.java:4211)   02-03 21:09:00.880:E / AndroidRuntime(14290):在android.view.View $ PerformClick.run(View.java:17267)   02-03 21:09:00.880:E / AndroidRuntime(14290):在android.os.Handler.handleCallback(Handler.java:615)   02-03 21:09:00.880:E / AndroidRuntime(14290):在android.os.Handler.dispatchMessage(Handler.java:92)   02-03 21:09:00.880:E / AndroidRuntime(14290):在android.os.Looper.loop(Looper.java:137)   02-03 21:09:00.880:E / AndroidRuntime(14290):在android.app.ActivityThread.main(ActivityThread.java:4898)   02-03 21:09:00.880:E / AndroidRuntime(14290):at java.lang.reflect.Method.invokeNative(Native Method)   02-03 21:09:00.880:E / AndroidRuntime(14290):at java.lang.reflect.Method.invoke(Method.java:511)   02-03 21:09:00.880:E / AndroidRuntime(14290):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1006)   02-03 21:09:00.880:E / AndroidRuntime(14290):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)   02-03 21:09:00.880:E / AndroidRuntime(14290):at dalvik.system.NativeStart.main(Native Method)

1 个答案:

答案 0 :(得分:0)

首先,查看dev branch中的代码。接下来,在TouchImageView中查看名为setZoom()的方法。您可以将此方法连接到缩放按钮,如下所示:

zoomIn.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            float scale = image.getCurrentZoom();
            PointF centerPoint = image.getCenterOfZoomedImage();
            image.setZoom(scale * 1.25, centerPoint.x, centerPoint.y);
        }
});