Closed nobetter1 closed 4 years ago
请问你解决了吗?我也遇到这个问题了。不知道如何解决
作者推荐我换了框架StfalconImageViewer
这个问题应该是预先使用centerCrop的小图占位.如果之后的大图加载成功后会变成全屏效果. 这里大图的加载失败了.所以界面停留在了小图展示. 同时由于框架没有友好的支持重试功能导致.
interface VHCustomizer {
fun initialize(type: Int, viewHolder: RecyclerView.ViewHolder) {}
fun bind(type: Int, data: Photo, viewHolder: RecyclerView.ViewHolder) {}
}
interface ImageLoader {
fun load(view: ImageView, data: Photo, viewHolder: RecyclerView.ViewHolder)
fun load(subsamplingView: SubsamplingScaleImageView, data: Photo, viewHolder: RecyclerView.ViewHolder)
}
关于加载的过程.我将Loader的接口进行了调整.
现在框架不关心数据源是什么,也不关心加载过程.全权交给开发者.
你需要实现 VHCustomizer 中重新布局PhotoViewHolder
追加自定义元素,比如你的loadingUI.
在ImageLoader load 中去控制 load 的状态表现.
当loading失败的时候可以展示你的retry按钮并且添加点击重新加载的功能
尝试使用 ImageViewerBuilder.show()
来展示你的数据吧
占了大图的位置 但是显示的是centerCrop的小图