PhotoViewer
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.wanglu1209:PhotoViewer:lastRelease'
}
使用
点击多张图片(类似微信朋友圈查看图片)
PhotoViewer
.setData(图片链接 List<String>)
.setCurrentPage(现在是哪页)
.setImgContainer(img 的容器 rv/gv/lv)
.setShowImageViewInterface(object : PhotoViewer.ShowImageViewInterface {
override fun show(iv: ImageView, url: String) {
// 设置自己加载图片的框架来加载图片
Glide.with(iv.context).load(url).into(iv)
}
})
.setOnLongClickListener(object : OnLongClickListener{
override fun onLongClick(view: View) {
// 长按图片的逻辑
}
})
.start(this)
只点击一张图片时(类似点击查看头像)
PhotoViewer
.setClickSingleImg(url, iv) //因为本框架不参与加载图片,所以还是要写回调方法
.setShowImageViewInterface(object : PhotoViewer.ShowImageViewInterface {
override fun show(iv: ImageView, url: String) {
Glide.with(iv.context).load(url).into(iv)
}
})
.start(this)
代码中,photoview文件夹为chrisbanes大神的PhotoView
把代码加入到其中做了一些修改来达到效果
Feature
- 加载大图时没有动画的问题
更新日志
0.50
修复一个小问题:
如果 XML 中 ImageView 并不是在第一层所导致的崩溃问题
0.49
增加 androidx 的支持
0.47
修复了在下拉退出时双指放大图片导致图片不会回弹的 bug
0.46
增加 PhotoViewer 加载和结束的监听接口
.setOnPhotoViewerCreatedListener{}
.setOnPhotoViewerDestroyListener{}
0.45
更改依赖方式为 compileOnly
0.44
修改了图片 fragment 传参的方式
0.43
修复了图片放大到最大点击退出崩溃的问题
0.42
增加了指示器样式的选择,setIndicatorType(PhotoViewer.INDICATOR_TYPE_DOT/INDICATOR_TYPE_TEXT)
但是如果图片>9 张,则默认显示文字样式,因为屏幕装不下
0.40
增加了长按监听接口
0.39
解决了滑到的图片不在屏幕中显示的时候,RecyclerView 获取不到 ItemView 报错的问题
0.37
minSDK 改为 14
0.36
增加 view 的判空处理,解决由小圆点引发的闪退问题
0.35
使用软引用解决了内存泄露的问题
0.34
增加了返回按钮监听
0.33
增加了简单的 loading,loading 颜色是根据主 model 的 colorAccent 来改变的,暂时不能自己设置颜色
0.32
增加了点击一张图片的方法
0.31
增加了弹出动画!
0.30
重构了 view 移动的代码,再次重新更改了退出动画,现在贼鸡儿流畅!!!
0.21
点按退出增加动画效果了,再次更新了退出的位置,效果更好
0.20
重构了代码,简化了调用链,更改了弹出方式(以前为 activity,现在改为在当前 Activity 中增加一个 layout),所以退出更顺滑,也不会出现两个 activity 之间退出的问题
0.18
修改了滑动时修改透明度的数值,不会那么快变为透明
0.17
修改了退出时缩放的代码,缩放更加精准
0.16
修复了一张图片时的问题
0.15
增加了指示器
0.14
简化了调用链 修复了退出动画
