Skip to content

🌅 ImageViewer是一个图片查看器(类似微信查看图片效果),一般用来查看图片详情或查看大图时使用,支持多张查看。简单易用。

License

Notifications You must be signed in to change notification settings

jenly1314/ImageViewer

Repository files navigation

ImageViewer

Image

Download MavenCentral JitPack CircleCI API License

ImageViewer for Android 是一个图片查看器,一般用来查看图片详情或查看大图时使用。

Gif 展示

Image

你也可以直接下载 演示App 体验效果

引入

Gradle:

  1. 在Project的 build.gradlesetting.gradle 中添加远程仓库

    repositories {
        //...
        mavenCentral()
        maven { url 'https://jitpack.io' }
    }
  2. 在Module的 build.gradle 里面添加引入依赖项

    implementation 'com.github.jenly1314:imageviewer:1.2.0'

使用

相关说明

  • 使用 ImageViewer 时,必须配置一个实现的 ImageLoader

  • ImageViewer 一次可以查看多张图片或单张图片,支持的类型可以是 UriurlfilePathFileDrawableResImageDataSource 等。

  • 目前内置默认实现 ImageLoader 的有 CoilImageLoaderGlideImageLoaderPicassoImageLoader ,三者选其一即可,如果以上都不满足您的需求,您也可以自己实现一个 ImageLoader

  • 为了保证 ImageViewer 体积最小化,让用户有更多选择的可能性, ImageViewer 仅编译时用到了 coilGlidePicasso

当你使用了 CoilImageLoader 时,则需依赖 COIL 库 (v1.2.0新增)

当你使用了 GlideImageLoader 时,则需依赖 Glide

当你使用了 PicassoImageLoader 时,则需依赖 Picasso

代码示例

示例一:简单调用

ImageViewer.load(model)//要加载的图片数据,单张或多张
    .imageLoader(GlideImageLoader())// 图片加载器,目前内置的有CoilImageLoader、GlideImageLoader和PicassoImageLoader,也可以自己实现
    .start(activity,sharedElement)//activity or fragment, 跳转时的共享元素视图

示例二:根据需要修改一些配置

ImageViewer.load(model)//要加载的图片数据,单张或多张
    .imageLoader(GlideImageLoader())// 图片加载器,目前内置的有CoilImageLoader、GlideImageLoader和PicassoImageLoader,也可以自己实现
    .selection(position)//当前选中位置,默认:0
    .showIndicator(true)//是否显示指示器,默认不显示
    .theme(R.style.ImageViewerTheme)//设置主题风格,默认:R.style.ImageViewerTheme
    .orientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT)//设置屏幕方向,默认:ActivityInfo.SCREEN_ORIENTATION_BEHIND
    .start(activity,sharedElement)//activity or fragment, 跳转时的共享元素视图

特别说明:全局设置默认的图片加载器(v1.2.0新增)

ImageViewer.setGlobalDefaultImageLoader(imageLoader)

当设置了全局默认的图片加载器后,就可以在使用ImageViewer实例时,不用再单独调用imageViewer.imageLoader(imageLoader)去设置图片加载器了。

更多使用详情,请查看app中的源码使用示例或直接查看 API帮助文档

相关推荐

  • DrawBoard 一个自定义View实现的画板;方便对图片进行编辑和各种涂鸦相关操作。

版本日志

v1.2.0:2024-12-6

  • 代码全部改为使用kotlin
  • 更新Gradle至v8.0
  • 更新compileSdk至32
  • 提升minSdk至21
  • 新增CoilImageLoader
  • 新增全局设置图片加载器函数 ImageViewer.setGlobalDefaultImageLoader(imageLoader)

赞赏

如果您喜欢ImageViewer,或感觉ImageViewer帮助到了您,可以点右上角“Star”支持一下,您的支持就是我的动力,谢谢 😃

您也可以扫描下面的二维码,请作者喝杯咖啡 ☕

关于我

我的博客 GitHub Gitee CSDN 博客园
Jenly's Blog jenly1314 jenly1314 jenly121 jenly

联系我

微信公众号 Gmail邮箱 QQ邮箱 QQ群 QQ群
Jenly666 jenly1314 jenly1314 20867961 64020761