panpf / sketch

Sketch is an image loading library designed for Compose Multiplatform and Android View. It is powerful and rich in functions. In addition to basic functions, it also supports GIF, SVG, video thumbnails, Exif Orientation, etc.
Apache License 2.0
2.01k stars 307 forks source link

长图不自动全屏 #102

Closed EmMper closed 5 years ago

EmMper commented 5 years ago

按照文档上来的

val siv = SketchImageView(context)
siv.isZoomEnabled = true
siv.zoomer?.blockDisplayer?.setPause(false)
siv.displayImage(uri)

手动setZoom(getFillZoomScale())就可以全屏,但是不是从顶部,而是从图片中间进入全屏。 只不过我的viewPager采用的是pagerAdapter,不是fragmentPagerAdapter。 另外似乎没有接口来确定图片是否滚到顶部,或者获取图片的滚动高度,我自己实现了类似微信的下拉关闭动画,因为无法判断是否滚到顶部,所以处理不了滑动冲突……

panpf commented 5 years ago

第一个问题

首先我不清除你全屏显示的需求是什么?使用场景是什么?所有图片都全屏显示? 另外Sketch 默认是不会全屏的,你可以开启阅读模式,开启后对于宽高比例差很大的图片就会自动从顶部全屏显示

第二个问题

确实没有提供相关的 api 判断是否滚动到顶部,但后续考虑加上

EmMper commented 5 years ago

第一个问题

首先我不清除你全屏显示的需求是什么?使用场景是什么?所有图片都全屏显示? 另外Sketch 默认是不会全屏的,你可以开启阅读模式,开启后对于宽高比例差很大的图片就会自动从顶部全屏显示

第二个问题

确实没有提供相关的 api 判断是否滚动到顶部,但后续考虑加上

OK,了解了,问题已解决。