iielse / imageviewer

A simple and customizable Android full-screen image viewer 一个简单且可自定义的Android全屏图像浏览器
MIT License
2.23k stars 310 forks source link

超长图大图预览时,遇到个问题 #134

Closed zhangkun0018 closed 2 years ago

zhangkun0018 commented 2 years ago

超长图大图预览时,设置为SubsamplingScaleImageView.SCALE_TYPE_CENTER_INSIDE模式时,图片不显示。触摸之后,图片才会显示出来。 https://user-images.githubusercontent.com/23331766/183039852-4e7403db-6fd2-45f8-b7e8-99a8460c08d0.mp4

iielse commented 2 years ago

你说的问题我前段时间遇到过 。最近前一次修改,我对SubsamplingScaleImageView的逻辑调整过,支持了下拽返回。 开发者不需要再设置 SubsamplingScaleImageView 的 scaleType 了。 你看下你这里用的[2.1.16]吗

zhangkun0018 commented 2 years ago

我用的不是最新的,我换最新的试试

zhangkun0018 commented 2 years ago

我现在需要设置SubsamplingScaleImageView.SCALE_TYPE_CENTER_INSIDE模式,用2.1.16也还是会出现上面的问题。

iielse commented 2 years ago

你看下最新的demo代码。 SubsamplingScaleImageView的scaleType我这边应该已经做成禁止设置的了。 然后同时支持了下拽返回。最新的代码应该也不存在开始是黑屏要触碰一下才显示内容的问题

https://github.com/iielse/res/blob/master/imageviewer/D65D83A5BE77909BF65BBBCE6BE73211.mp4

你看下现在是这样的效果,点击后直接展示顶部区域,可以下拽返回

zhangkun0018 commented 2 years ago

最新版本2.1.16 SubsamplingScaleImageView的scaleType是SubsamplingScaleImageView.SCALE_TYPE_START没有问题,但是我想要的是,默认加载SubsamplingScaleImageView的scaleType是SubsamplingScaleImageView.SCALE_TYPE_CENTER_INSIDE就不行。

iielse commented 2 years ago

现在不需要在关心 SCALE_TYPE_CENTER_INSIDE 这种模式吧。 SCALE_TYPE_CENTER_INSIDE 这个模式为什么会黑,要触摸一下才显示内容 这个问题,我这里在解决了下拽关闭后使用了SCALE_TYPE_START后就没有深究了。因为感觉大概率可能和 SubsamplingScaleImageView 有关。而且这种START的效果比CENTER_INSIDE好之后, 本着马斯克第一性原理,不需要去解决一个本不该存在的问题。就没管了