问题标签 [android-photoview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
146 浏览

android - 使用 ViewPager + Glide + PhotoView 恢复分页时的缩放/平移矩阵

我的用例是让 ViewPager 显示一系列 PhotoView 实例,其中分页图像应保持缩放和平移的最后状态。

PhotoView 实例由 PagerAdapter 创建

我将“OnMatrixChangedListener”附加到 PhotoView 并存储 PhotoViewAttacher#mSuppMatrix。

我遇到的问题是找到适用于存储的 mSuppMatrix 的合适时机。

  • 无论 ViewGroup 状态如何,ViewPager#onPageSelected 都会触发,即。PhotoView 可能仍在绘制,或者 Glide 甚至可能仍在加载
  • Glide#RequestListener (onResourceReady) 在 Drawable 准备好时触发,但显然在运行 PhotoView#setImageDrawable 之前
  • 即使在调用 super.setImageDrawable 之后覆盖 PhotoView#setImageDrawable 并应用 mSuppMatrix 也为时过早,因为稍后调用 layout() 会导致 PhotoViewAttacher 运行 reset(),从而使 mSuppMatrix 无效

因此,给定一个包含缩放/平移信息的目标“mSuppMatrix”,并使用 ViewPager + PhotoView + Glide 的组合,应用 mSuppMatrix 的最佳侦听器/事件处理程序是什么?

0 投票
1 回答
51 浏览

java - 如何覆盖 boolean PhotoViewAttacher onFling(MotionEvent, MotionEvent, float, float) 的限制?

PhotoViewAttacher' 会boolean onFling(MotionEvent, MotionEvent, float, float)阻止调用 myOnSingleFlingListeneronFling方法,除非当前比例是最小值。

OnSingleFlingListenercom.github.chrisbanes.photoview. 但是,由于该onFling方法仅对包可见,因此首先调用PhotoViewAttacher' 的方法。防止我的方法在. 我需要我的,除非。(当我的图像宽度与窗口宽度匹配时。)我该如何解决这个问题?我需要自己制作整个包的副本并修改为公开吗?onFlingPhotoViewAttacher.onFlingonFlingscale > DEFAULT_MIN_SCALEscale > getMediumScale()scale == getMediumScale()PhotoViewOnSingleFlingListener.onFling

我的代码:

OnSingleFlingListener:

PhotoViewAttacher:

我想要我的onFling被叫时getScale() <= getMediumScale()。相反,我的onFling方法仅在getScale() == DEFAULT_MIN_SCALE.

0 投票
2 回答
228 浏览

android - 在Android中使用Camera拍摄的图片中显示图片

我正在尝试以下操作:

  1. 用我的安卓设备拍照。
  2. 使用步骤#1 中拍摄的图片填充图像视图

我尝试按照下面列出的教程进行操作

  1. https://developer.android.com/training/camera/photobasics
  2. 如何在android中相机拍摄的imageview照片中显示图片
  3. 在android中相机拍摄的imageview照片中显示图片

但似乎没有任何效果。这是我的代码

减少布局 xml

我将此布局加载到片段中。这是我的片段代码。

我的 Android 清单

XML 文件

更新:我添加了屏幕截图。

我应该指定,但是当我尝试这个时,控件根本不会返回onActivityResult。我不知道。

图片#1:getActivity().startActivityForResult(captureImage, REQUEST_CAMERA)返回时的视图

模拟器上的相机视图

我通过单击相机图标然后按返回键来拍照。控制永远不会去onActivityResult。我不知道为什么会这样。我尝试了设备和模拟器,并且始终得到相同的结果。当我再次单击按钮时,我看到如下崩溃。

相机崩溃.

异常堆栈跟踪如下:

更新#2:拍照后相机不返回,onActivityResult就像

  1. 相机不返回 OnActivityResult

更新

这是对我有用的解决方案

0 投票
0 回答
157 浏览

bitmap - Android:在 ImageView 上添加标记

我试图用图像(平面图)和标记创建视图。我需要在用户点击的地方添加标记。这个标记应该是另一个视图,当用户缩放 ImageView 时,它不会被缩放,但是当用户拖动视图或缩放它时,它应该保持在放置的坐标上。所以它应该像在谷歌地图上一样工作:大图像作为背景和选择器,用户可以将其放置在任何地方。我尝试使用 PhotoView 在此处输入链接描述,因为它支持缩放、拖动。但我无法在此配置中创建它。我试图将选择器限制为从左、右、上、下进行照片查看。Bu PhotoView 修改其中的图像,当我缩放或拖动它时,我的选择器“飞”到屏幕外。然后我尝试将选择器与 PhotoView 中的图像合并,但这种方式不太合适,因为当用户缩放图像时,选择器会随之缩放(它是图像的一部分)。

那么,也许有人会做这样的事情?

我的解决方案:

合并图像和选择器的功能:

0 投票
1 回答
160 浏览

java - 使用 PhotoView 放大后无法达到图像的原始大小

我使用 Chris Bane 的PhotoView来显示 ImageViews。放大后,我无法缩小到图像的原始大小。好像边框太小了,但还有其他解释吗?

xml photoview 设置:

0 投票
1 回答
127 浏览

android - findViewById 与 PhotoView 库问题

我正在尝试将 PhotoView与 Kotlin 一起使用。

但是当我尝试像在 exaple 中那样获取 photoView 时:

我收到错误“类型参数不在其范围内。预期:查看!找到:PhotoView”

0 投票
0 回答
134 浏览

android - Photoview 禁用缩小图像

  • 我在我的 Android 应用程序中使用Photoview库来启用图像放大功能。
  • 但我想禁用图像缩小。有没有办法做到这一点?
0 投票
2 回答
2195 浏览

flutter - PhotoView 库无法放大/缩小图像

我正在尝试用 PhotoView 做一个简单的任务。我有一个 AssetImage,我正在尝试显示图像,用户可以放大/缩小比例。

我正在使用 Pubspec 依赖项:

照片视图:^0.9.2

我在网上找到了这个测试代码,但似乎也不起作用:(

0 投票
0 回答
197 浏览

android - ViewPager2 在滚动时调整大小

我们最近从 ViewPager 迁移到 ViewPager2。一切都很简单,但我们注意到,在切换页面时,随机滚动的页面会缩小并保持该大小,直到您与页面交互。

我们对 viewpager2 没有自定义:

在实例化之后,我们也没有设置页面转换。

正在调整大小的内容是 PhotoView ( https://github.com/chrisbanes/PhotoView )。照片视图内没有任何变化

有没有其他人遇到过这个?

这是一个简单的视觉效果:

滚动前的 Viewpager2 大小 滚动期间/之后的 Viewpager2 大小

0 投票
0 回答
155 浏览

java - 如何设置图像视图的圆角

我正在使用我想以编程com.github.chrisbanes.photoview.PhotoView方式 设置此照片视图的圆角来创建图像视图。如果您知道其他库可以帮助我捏缩放图像并且我也设置了圆角然后建议我。