【问题标题】:How to limit minimum zoom to a screen size in Android application implementing multi-touch screen?如何在实现多点触控屏幕的 Android 应用程序中将最小缩放限制为屏幕尺寸?
【发布时间】:2011-03-19 14:32:54
【问题描述】:

我使用“Hello Android”中的代码来实现多点触控屏幕。它允许拖动手势和捏缩放。

这个实现的问题是图片可能会变得非常小或从屏幕上移出。有一种解决方案可以限制缩放和平移(http://www.zdnet.com/blog/burnette/how-to-use-multi-touch-in-android-2-part-6-implementing-the-pinch -缩放手势/1847)。它限制缩放,但限制在一定的大小。在 Android Gallery 应用程序中,缩放的最小尺寸是屏幕尺寸。

如何做到这一点?

【问题讨论】:

    标签: android image-manipulation zooming


    【解决方案1】:

    理想情况下,您希望将图像的宽度和高度限制在视图范围内。您可以在自定义视图中使用 onSizeChanged 方法获取边界。

    定义一个minScale(根据视图大小)和一个maxScale(根据原始图像比例),在改变图像的变换矩阵之前,检查最终比例是否在这个范围内。

    您必须对宽度和高度应用相同的比例因子以保持相同的纵横比。

    --编辑-- 把这个放到 Github 上:https://github.com/a85/WebComicViewer/blob/master/src/com/rickreation/ui/ZoomableImageView.java

    【讨论】:

    • 添加了我使用的类的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-05
    • 2023-01-29
    • 1970-01-01
    • 2013-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多