SimplePhotoPicker:调用系统相机、相册的轻量框架

SimplePhotoPicker

一个进入相册,调用相机的可高度定制化的框架,持续维护中…

效果图

那些你所担心但是已经帮你解决的问题

1.Android6.0**隐私权限**请求问题—>已判断并处理
2.Android7.0 FileProvider访问问题—>已判断并处理

目前实现的功能

1.进入相册调用相机
2.设置可选图片数量
3.第二次进入时记录上次选中图片
4.设置选中icon、未选中icon、相机icon、界面的titleView
5.以回调监听选中结果,使用方便
6.动态设置了Imageview的宽高,几乎可以适配所有屏幕
7.类似于微信点击图片查看详情的切换效果

使用方法

导入依赖

gradle

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

    dependencies {
                implementation 'com.github.269138004:SimplePhotoPicker:v1.1'

        }

maven

    <repositories>
        <repository>
            <id>jitpack.io</id>
            <url>https://jitpack.io</url>
        </repository>
    </repositories>

    <dependency>
            <groupId>com.github.269138004</groupId>
            <artifactId>SimplePhotoPicker</artifactId>
            <version>v1.1</version>
    </dependency>

使用

new AlbumHelper()
    .with(MainActivity.this)
    .setPickPhotoNums(5)//可选图片数量,默认1
    .setResultPhotoList((ArrayList<String>) list_one)//接收图片结果的list集合,必须要写,不然无法记录原来已选的
    .setSelectImg(R.mipmap.ic_launcher)//设置图片选中表示,可不写,有默认
    .setUnSelectImg(R.mipmap.ic_launcher)//设置图片未选中表示,可不写,有默认
    .setCameraImg(R.mipmap.ic_launcher)//设置相机图片icon,可不写,有默认
    .setTitleView(R.layout.title_view)//设置界面的titleView
    .setOnReceiveResultListener(new SelectPhotoResult() {//选择完图片后的回调,在这里做ui刷新操作
        @Override
        public void onReceivePhotoResult(ArrayList<String> resultList) {
            list_one.clear();
            ((ArrayList<String>) list_one).addAll(resultList);
            adapter_one.notifyDataSetChanged();
        }
    }).start();//开始
关于设置界面的titleview
titleview的布局可以自己随意设置,但是有三个主要功能键需要加上固定的id
    1、界面的返回功能-->设置固定id:album_title_back
    2、界面的title-->设置固定id:album_title_name
    3、界面的提交功能-->设置固定id:album_title_finish
    这三部分不需要必须是三个具体的控件,只要是view的子类即可,比如返回键是一张图片加文字,只要
    给包裹图片和文字的控件设置上相应的id即可
    不要自己随意设置id,一定要使用这三个固定id

猜你喜欢

转载自blog.csdn.net/tiankongcheng6/article/details/82691561