1

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

有人可以在这里帮我吗?TouchImage View

每当我尝试用我的数字缩放我的应用程序崩溃的用户可以触摸图像时,遵循“MikeOrtiz”的答案后,这里是 logcat 错误我该如何避免这个问题?我只想通过 zoomin 和 zoomout 按钮进行缩放,但如果其他人触摸图像,那么它应该忽略该操作而不是崩溃应用程序

02-03 21:09:00.880: E/AndroidRuntime(14290): 致命异常: main 02-03 21:09:00.880: E/AndroidRuntime(14290): java.lang.UnsupportedOperationException: 比例必须大于和小于 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) : 在 com.example.imagetouchview.TouchImageView1.setZoom(TouchImageView1.java:354) 02-03 21:09:00.880: E/AndroidRuntime(14290): 在 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): 在 java.lang.reflect.Method.invoke(Method.java:511) 02-03 21:09:00.880: E/AndroidRuntime(14290): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller。运行(ZygoteInit.java:1006)02-03 21:09:00.880:E/AndroidRuntime(14290):在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)02-03 21:09: 00.880:E/AndroidRuntime(14290): 在 dalvik.system.NativeStart.main(Native Method)

4

1 回答 1

0

首先,查看dev 分支中的代码。接下来,查看 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);
        }
});
于 2014-02-02T07:59:35.617 回答