摘要:公司需要多图选择并上传,自己实现了一个并 封装成 Library,方便以后使用

下载方式

1
2
3
4
5
6
<dependency>
<groupId>com.sh.zsh.code</groupId>
<artifactId>shphotoselectorlibrary</artifactId>
<version>2.0.9</version>
<type>pom</type>
</dependency>

or Gradle:

1
compile 'com.sh.zsh.code:shphotoselectorlibrary:2.0.9'

该项目依赖 Glide:3.7.0 如果有冲突 可以 修改主项目里的依赖 或者 直接导入Library

跳转到 图片选择器页面

1
2
3
4
5
6
7
8
9
10
11
12
public static final int IMGSACTIVITY_REQUEST = 10001;
public void chise(View v) {
Intent intent = new Intent();
//可选择图片的最大数量
intent.putExtra(PhotoActivity.IMAGE_COUNT,9);
//顶部Toolbar栏背景颜色
intent.putExtra(PhotoActivity.BAR_COLORS,R.color.colorPrimary);
intent.setClass(this,PhotoActivity.class);
startActivityForResult(intent,IMGSACTIVITY_REQUEST);
}

在Activity的回调里获取到 所有选择的图片地址

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == IMGSACTIVITY_REQUEST && resultCode == RESULT_OK) {
Bundle bundle = data.getExtras();
if (bundle != null) {
if (bundle.getStringArrayList("files") != null) {
listfile = bundle.getStringArrayList("files");
listView.setVisibility(View.VISIBLE);
ArrayAdapter<String> arryAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listfile);
listView.setAdapter(arryAdapter);
}
}
}
}

效果


源码地址:https://github.com/hui46226021/ShPhotoSelector