Android文件选择器,默认实现了图片选择器,可自行继承并实现任意的文件类型选择器
- 根项目的build.gradle中加入以下代码
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
- 在需要的模块加入以下的依赖
dependencies {
implementation 'com.github.Brook007:FilePicker:1.1.1'
}
通过下面的代码配置一个默认的配置
FilePickerConfig defaultConfig = FilePickerConfig.getDefaultConfig();
defaultConfig.setImageLoader(new IPreviewImageLoader() {
@Override
public void loadPreviewImage(File sourceFile, ImageView previewImageView) {
Glide.with(previewImageView.getContext())
.load(sourceFile)
.apply(new RequestOptions().centerCrop())
.into(previewImageView);
}
});
defaultConfig.setPickerCount(9);
通过下面的代码在每次调用选择器的时候创建一个新的配置,并启动选择器,这个配置不会影响到默认的配置
FilePickerUtils.getInstance()
.setPickerCount(1)
// 默认MimeType为image/*
.setFilePickerType("image/*")
.launchPicker(MainActivity.this, new FilePickerValueCallback() {
@Override
public void onPickResult(List<File> file) {
Log.d("TAG", "回调" + Arrays.toString(file.toArray()));
}
});
编写下面的代码来使用指定的配置,并启动选择器
FilePickerUtils.getInstance()
.setPickerCount(1)
.setFilePickerConfig(config)
.launchPicker(MainActivity.this, new FilePickerValueCallback() {
@Override
public void onPickResult(List<File> file) {
Log.d("TAG", "回调" + Arrays.toString(file.toArray()));
}
});