Android图片选择器 丰富的配置选项

 更新时间:2016年08月09日 09:52:46   作者:yyh352091626  
这篇文章主要介绍了Android图片选择器,丰富的配置选项,极大程度的简化使用,感兴趣的小伙伴们可以参考一下

最近也是刚好项目用到,于是就动手写了一个Android 图片选择器的库。支持图库多选/单选/图片裁剪/拍照/自定义图片加载库,极大程度的简化使用。

截图

优点

1、通过实现ImageLoader接口,可以实现自定义图片加载器的功能。例如可以用Glide、Picasso、ImageLoader,暂不支持Fresco,因为SimpleDraweeView本身并不属于ImageView。当然,也可用相同的思路来实现。
2、可配置的ImgSelConfig。方便进行扩展。
3、简化使用

项目地址:https://github.com/smuyyh/ImageSelector

依赖

dependencies {
 compile 'com.yuyh.imgsel:library:1.0.1'
}

使用

配置权限

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

使用

// 自定义图片加载器
private ImageLoader loader = new ImageLoader() {
 @Override
 public void displayImage(Context context, String path, ImageView imageView) {
  // TODO 在这边可以自定义图片加载库来加载ImageView,例如Glide、Picasso、ImageLoader等
  Glide.with(context).load(path).into(imageView);
 }
};
// 配置选项
ImgSelConfig config = new ImgSelConfig.Builder(loader)
  // 是否多选
  .multiSelect(false)
  // “确定”按钮背景色
  .btnBgColor(Color.GRAY)
  // “确定”按钮文字颜色
  .btnTextColor(Color.BLUE)
  // 标题
  .title("图片")
  // 标题文字颜色
  .titleColor(Color.WHITE)
  // TitleBar背景色
  .titleBgColor(Color.parseColor("#3F51B5"))
  // 裁剪大小。needCrop为true的时候配置
  .cropSize(1, 1, 200, 200)
  .needCrop(true)
  // 第一个是否显示相机
  .needCamera(false)
  // 最大选择图片数量
  .maxNum(9)
  .build();

// 跳转到图片选择器
ImgSelActivity.startActivity(this, config, REQUEST_CODE);

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
 super.onActivityResult(requestCode, resultCode, data);
 // 图片选择结果回调
 if (requestCode == REQUEST_CODE && resultCode == RESULT_OK && data != null) {
  List<String> pathList = data.getStringArrayListExtra(ImgSelActivity.INTENT_RESULT);
  for (String path : pathList) {
   tvResult.append(path + "\n");
  }
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Android应用开发中控制反转IoC设计模式使用教程

    Android应用开发中控制反转IoC设计模式使用教程

    这篇文章主要介绍了Android应用开发中控制反转IoC设计模式使用教程,IoC其实更常被理解为一种依赖注入的模式,用来分解业务层降低耦合,需要的朋友可以参考下
    2016-04-04
  • Android CameraX打开摄像头预览教程

    Android CameraX打开摄像头预览教程

    大家好,本篇文章主要讲的是Android CameraX打开摄像头预览教程,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2021-12-12
  • Android自定义TabLayout效果

    Android自定义TabLayout效果

    这篇文章主要为大家详细介绍了Android自定义TabLayout效果的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • Android自定义水波纹动画Layout实例代码

    Android自定义水波纹动画Layout实例代码

    这篇文章主要介绍了Android自定义水波纹动画Layout的实例代码,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • 微信小程序电商常用倒计时实现实例

    微信小程序电商常用倒计时实现实例

    这篇文章主要介绍了微信小程序电商常用倒计时实现实例的相关资料,需要的朋友可以参考下
    2017-06-06
  • EditText限制小数点前后位数的实例

    EditText限制小数点前后位数的实例

    下面小编就为大家带来一篇EditText限制小数点前后位数的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • android中NFC读写功能的实现方法

    android中NFC读写功能的实现方法

    这篇文章主要为大家详细介绍了android中NFC读写功能的实现方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • Handler实现线程之间的通信下载文件动态更新进度条

    Handler实现线程之间的通信下载文件动态更新进度条

    每一个线程对应一个消息队列MessageQueue,实现线程之间的通信,可通过Handler对象将数据装进Message中,再将消息加入消息队列,而后线程会依次处理消息队列中的消息。这篇文章主要介绍了Handler实现线程之间的通信下载文件动态更新进度条,需要的朋友可以参考下
    2017-08-08
  • FFmpeg Principle分析Out put File 数据结构

    FFmpeg Principle分析Out put File 数据结构

    这篇文章主要为大家介绍了FFmpeg Principle分析Out put File 数据结构,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Android开发实现Launcher3应用列表修改透明背景的方法

    Android开发实现Launcher3应用列表修改透明背景的方法

    这篇文章主要介绍了Android开发实现Launcher3应用列表修改透明背景的方法,结合实例形式分析了Launcher3相关配置文件与功能函数修改设置操作技巧,需要的朋友可以参考下
    2017-11-11

最新评论