在 android 应用程序中缩放图像大小,如 snapchat 过滤图像

Scaling image size like snapchat filter images in android application

我正在尝试制作简单的图像过滤器,就像我的 android 应用程序中的 snapchat 那样。 如下图所示

在这里你可以看到红色圆圈中的图像。在触摸图像并用两根手指拖动(如捏合)时,它会改变其大小和方向,并且可以拖动到屏幕上的任何位置。

我正在我的 android 应用程序中寻找相同的实现,但无法获得与 snapchat 一样的确切解决方案。

请提供解决方案。

提前致谢。

对于此功能,我建议您使用 PhotoView

它提供以下功能

  • 开箱即用的缩放,使用多点触控和双击。滚动,
  • 滚动流畅。
  • 在滚动父级(例如 ViewPager)中使用时完美运行。
  • 允许通知应用程序 当显示的矩阵发生变化时。在需要的时候有用 根据当前 zoom/scroll 位置更新您的 UI。
  • 允许在用户点击照片时通知应用程序。

用法

Build.gradle

dependencies {
    compile 'com.github.chrisbanes:PhotoView:1.3.0'
}

XML

<uk.co.senab.photoview.PhotoView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/iv_photo"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>

这个演示项目帮助我获得了我正在寻找的相同功能。

ImageGesture - 缩放、缩放和移动图像。