是否有显示大图像并允许用户放大和缩小和平移图像的通用方法?
到目前为止,我发现了两种方法:
查看更多
我使用了WebView并通过以下方式从内存中加载了图像
webview.loadUrl("file://...")
WebView处理所有平移缩放和滚动。如果使用wrap_content,则Webview不会更大,则图像不会显示白色区域。WebView是更好的ImageView;)
我正在使用相同的方法。我有一张很大的地铁地图,希望用户能够缩放和滚动。但是我注意到,如果您有一个很大的图像(即1000或3000像素宽),则放大后图像就会变得模糊。似乎大肠菌病无法显示非常清晰的大缩放图像。即使原始图像未压缩且非常清晰。因此,我最终将一个大图像切成较小的切片,然后通过HTML再次将它们放在一起。这样,放大时图像就保持清晰。(我在Nexus One上,在2.1和2.2之前都更新过)
@Mathias Lin:如果通过电线发送大图像,我听说运营商会压缩大图像。该用例适合您还是您在本地加载图像。
@Sam Quest:本地加载
使用Webview的内置缩放按钮并支持点按放大/缩小比编写一个全新的算法要好得多,后者可能无法在不同的手机和未来的android平台上使用,这要好得多
仅当图像恰好位于磁盘上,或者图像足够小以至于您可以基于64位编码并将字符串值传递到loadUrlWithData()时,才可以应用此解决方案。