600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > android 超强大的图片选择器 支持超大图加载

android 超强大的图片选择器 支持超大图加载

时间:2023-11-13 13:00:21

相关推荐

android 超强大的图片选择器 支持超大图加载

ImagePicker

项目地址: martin90s/ImagePicker 简介:超强大的图片选择器,支持超大图加载 更多: 作者 提 Bug 示例 APK 标签: Android- 图片选择- 超大图加载-

】效果图

第一张头像模式,第二张选择多张图片(包括动画和顺畅的跳转),第三张是分片加载超大图(19.5M,10000*5000px)

项目介绍请参考

Android-如何开发一个功能强大的图片选择器

致谢

subsampling-scale-image-viewy总的页面切换动画

如何添加

Gradle

1.在Project的build.gradle 中添加仓库地址

// JitPack仓库地址maven { url "https://jitpack.io" }

示例:

allprojects {repositories {jcenter()// JitPack仓库地址maven { url "https://jitpack.io" }}}

2.在app目录下的build.gradle中添加依赖

//SImagePickercompile 'com.github.martin90s:ImagePicker:v1.3.2'

如何使用

1.首先初始化(推荐在Application的oncreate中调用)

SImagePicker.init(new PickerConfig.Builder().setAppContext(this).setImageLoader(new FrescoImageLoader()).setToolbaseColor(getColor(R.color.colorPrimary)).build());

2.在需要选择图片的地方调用

SImagePicker.from(MainActivity.this).maxCount(9).rowCount(3).pickMode(SImagePicker.MODE_IMAGE).fileInterceptor(new SingleFileLimitInterceptor()).forResult(REQUEST_CODE_IMAGE);

可配置项

1.全局配置(即初始化时传入的PickerConfig,此配置作用于SImagePicker整个使用过程)

2.单次配置(即每次调用SImagePicker时传入的参数,此参数只对这次调用生效)

| | maxCount(int) | 此次选择允许的最大选择数量,默认是1.比如发朋友圈最多选择9张图就传9 | | rowCount(int) | 图片列表单排展示多少张图 | | setSelected(List) | 默认已经被选中的图片 | | pickMode(int) | 选图的模式,现在有头像模式和普通模式两种,头像模式选中图片后默认会跳到图片裁剪页面且默认只能选择一张 | | cropFilePath(String) | 头像模式下裁剪图片存放地址 | | showCamera(boolen) | 是否要展示拍照入口 | | pickText(int) | Picker里右下角展示的文字信息(比如配置选择,发送,完成) | | fileInterceptor(FileChooseInterceptor) | 图片过滤器,比如用户选择的单张图片大小有限制,即可写在这个拦截器中,当用户选择过大图片时可以提示并且过滤 | |forResult(int requestCode) | 打开图片选择器,并且传入requestCode

##获取结果

在调用图片选择器的Fragment或者Activity中

@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if (resultCode == Activity.RESULT_OK && requestCode == REQUEST_CODE_IMAGE) {final ArrayList<String> pathList =data.getStringArrayListExtra(PhotoPickerActivity.EXTRA_RESULT_SELECTION);final boolean original =data.getBooleanExtra(PhotoPickerActivity.EXTRA_RESULT_ORIGINAL, false);}}

##TODO

增加一个普通模式。由于现在预览为了支持超大图所以选择了SubsamplingView。后续增加一个不支持超大图的模式,会更加流畅Glide下由于glide的缓存策略,跳转动画第一次播放会闪一下,下版修复此问题

##联系方式

邮箱地址:martinhi@

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。