android - 如何获得图像的缩放功能?

标签 android imageview zooming

有没有一种常用的方法来显示大图并允许用户放大和缩小以及平移图像?

到目前为止,我找到了两种方法:

  1. 覆盖ImageView,对于这样一个常见的问题来说似乎有点过分了。
  2. 使用 web View ,但对整体布局等的控制较少。

最佳答案

更新

我刚刚给了 TouchImageView 一个新的更新。除了平移和捏缩放之外,它现在还包括双击缩放和 throw 。下面的代码非常过时了。您可以查看github project获取最新代码。

用法

将 TouchImageView.java 放在您的项目中。然后它可以像使用一样使用 ImageView 。示例:

TouchImageView img = (TouchImageView) findViewById(R.id.img);

如果你在 xml 中使用 TouchImageView,那么你必须提供完整的包 名称,因为它是自定义 View 。示例:

<com.example.touch.TouchImageView
    android:id="@+id/img”
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

注意:我已经删除了我之前的答案,其中包括一些非常旧的代码,现在直接链接到 github 上最新的代码。

ViewPager

如果您有兴趣将 TouchImageView 放入 ViewPager,refer to this answer.

关于android - 如何获得图像的缩放功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2537238/

相关文章:

android - 单击按钮 10 秒后如何使 imageView 可见?

ios - 使用 IBAction 按钮缩放 MapView

zooming - map 最大程度缩小时允许捏合缩放手势

javascript - 修复放大和缩小编码

在数据库中进行一些更改时,Android 应用程序崩溃

android - 在安卓应用中等待

android - ActionBarActivity 和 FragmentActivity ... "Inconvertible types"?

java - firebase android开发中通过循环从子节点获取特定数据

android - 以编程方式将 setScaleType 设置为 ScaleType.MATRIX 无效,但在 xml 中有效

android - 按 Intent 打开相机应用程序并将图片保存在 SD 和 imageView 上