繁体   English   中英

如何在实现多点触摸屏的Android应用程序中将最小缩放限制在屏幕尺寸上?

[英]How to limit minimum zoom to a screen size in Android application implementing multi-touch screen?

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

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

如何实现呢?

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

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

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

-编辑-已将其放在Github上: https : //github.com/a85/WebComicViewer/blob/master/src/com/rickreation/ui/ZoomableImageView.java

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM