• Stars
    star
    462
  • Rank 94,832 (Top 2 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 6 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

一个 **无侵入式** 仿微信朋友圈的图片查看器,使用超级简单!

PhotoViewer

该图片查看器是模仿微信朋友圈查看图片编写

           
allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
	

lastRelease:

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

简化了调用链 修复了退出动画