ImageViewer for Android 是一个图片查看器,一般用来查看图片详情或查看大图时使用。
你也可以直接下载 演示App 体验效果
-
在Project的 build.gradle 或 setting.gradle 中添加远程仓库
repositories { //... mavenCentral() maven { url 'https://jitpack.io' } }
-
在Module的 build.gradle 里面添加引入依赖项
implementation 'com.github.jenly1314:imageviewer:1.1.0'
-
使用 ImageViewer 时,必须配置一个实现的 ImageLoader。
-
ImageViewer 一次可以查看多张图片或单张图片,支持的类型可以是 Uri、 url 、 path 、 File、 DrawableRes、 ImageDataSource 等。
-
目前内置默认实现 ImageLoader 的有 GlideImageLoader 和 PicassoImageLoader ,二者选其一即可,如果二者不满足您的需求,您也可以自己实现一个 ImageLoader 。
-
为了保证 ImageViewer 体积最小化,让用户有更多选择的可能性, ImageViewer 仅编译时用到了 Glide 和 Picasso 。
当你使用了 GlideImageLoader 时,则需依赖 Glide 库。
当你使用了 PicassoImageLoader 时,则需依赖 Picasso 库。
示例一:简单调用
// data 可以多张图片List或单张图片,支持的类型可以是{@link Uri}, {@code url}, {@code path},{@link File}, {@link DrawableRes resId}…等
ImageViewer.load(data)//要加载的图片数据,单张或多张
.imageLoader(new GlideImageLoader())//加载器,imageLoader必须配置,目前内置的有GlideImageLoader或PicassoImageLoader,也可以自己实现
.start(activity,sharedElement);//activity or fragment, 跳转时的共享元素视图
示例二:根据需要修改一些配置
// data 可以多张图片List或单张图片,支持的类型可以是{@link Uri}, {@code url}, {@code path},{@link File}, {@link DrawableRes resId}…等
ImageViewer.load(data)//要加载的图片数据,单张或多张
.selection(position)//当前选中位置,默认:0
.indicator(true)//是否显示指示器,默认不显示
.imageLoader(new GlideImageLoader())//加载器,imageLoader必须配置,目前内置的有GlideImageLoader或PicassoImageLoader,也可以自己实现
.theme(R.style.ImageViewerTheme)//设置主题风格,默认:R.style.ImageViewerTheme
.orientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT)//设置屏幕方向,默认:ActivityInfo.SCREEN_ORIENTATION_BEHIND
.start(activity,sharedElement);//activity or fragment, 跳转时的共享元素视图
更多使用详情,请查看app中的源码使用示例或直接查看 API帮助文档
- DrawBoard 一个自定义View实现的画板;方便对图片进行编辑和各种涂鸦相关操作。
- 更新Gradle至v7.3.3
- 更新compileSdk至30
- 优化细节
如果您喜欢ImageViewer,或感觉ImageViewer帮助到了您,可以点右上角“Star”支持一下,您的支持就是我的动力,谢谢 😃
您也可以扫描下面的二维码,请作者喝杯咖啡 ☕
我的博客 | GitHub | Gitee | CSDN | 博客园 |
---|---|---|---|---|
Jenly's Blog | jenly1314 | jenly1314 | jenly121 | jenly |
微信公众号 | Gmail邮箱 | QQ邮箱 | QQ群 | QQ群 |
---|---|---|---|---|
Jenly666 | jenly1314 | jenly1314 | 20867961 | 64020761 |