快速选择相册

一、绝招:
compile 'com.yuyh.imgsel:library:1.3.8'

二、方法|+配置

    openChooser(6-Bimp.bmp.size());

// 自定义图片加载器
private ImageLoader loader = new ImageLoader() {
@Override
public void displayImage(Context context, String path, ImageView imageView) {
Glide.with(context).load(path).into(imageView);
}
};

private void openChooser(int max) {
    // 自由配置选项
    ImgSelConfig config = new ImgSelConfig.Builder(mContext, loader)
            // 是否多选, 默认true
            .multiSelect(true)
            // 是否记住上次选中记录, 仅当multiSelect为true的时候配置,默认为true
            .rememberSelected(false)
            .btnText("确定")
            // “确定”按钮背景色
            .btnBgColor(Color.parseColor("#00000000"))
            // “确定”按钮文字颜色
            .btnTextColor(Color.parseColor("#3F51B5"))
            // 使用沉浸式状态栏
            .statusBarColor(Color.parseColor("#3F51B5"))
            // 返回图标ResId
            .backResId(R.drawable.bar_back_selector)
            // 标题
            .title("添加照片")
            // 标题文字颜色
            .titleColor(Color.BLACK)
            // TitleBar背景色
            .titleBgColor(Color.parseColor("#11ffffff"))
            // 裁剪大小。needCrop为true的时候配置
            // .cropSize(1, 1, 200, 200)
            .needCrop(false)
            // 第一个是否显示相机,默认true
            .needCamera(true)
            // 最大选择图片数量,默认9
            .maxNum(max)
            .build();
    // 跳转到图片选择器
    ImgSelActivity.startActivity(mContext, config, 1000);
}

三、onActivityResult 结果

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// 图片选择结果回调
if (requestCode == 1000 && resultCode == RESULT_OK && data != null && Bimp.drr.size() < 6) {
List<String> photoPathList = data.getStringArrayListExtra(ImgSelActivity.INTENT_RESULT);
for (String photoPath : photoPathList) {
Bimp.drr.add(photoPath);
}
}
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// 图片选择结果回调
if (requestCode == 1000 && resultCode == RESULT_OK && data != null) {
addPhotoToNet(data);
}
}

private void addPhotoToNet(Intent data) {
    List<String> photoPathList = data.getStringArrayListExtra(ImgSelActivity.INTENT_RESULT);

    ArrayList<PhotoBean> photoLists = new ArrayList<>();

    for (String photoPath : photoPathList) {
        file = new File(photoPath);
        PhotoBean  photoes = new PhotoBean("photo_pic[]",file);
        photoLists.add(photoes);
    }

    String url = OkNetUrl.add_Photo_Post(demoUid);

    okDownLoadData.muchPhotoUpLoad(url, photoLists, new OkDownLoadData.ObjectCallBack() {
        @Override
        public void onFailure(Request request, IOException e) {
            ToastUtils.StrToast(mContext, getResources().getString(R.string.no_net));
        }

        @Override
        public void onResponse(String json) {
            String message =  GsonUtils.jsonToString(json, "message");
            ToastUtils.StrToastThread(mContext,message);
        }
    });
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容