一、github地址:https://github.com/LuckSiege/PictureSelector
二、使用方法:demo很详细
三、我想说的:框架用到的东西太多了,不知道算不算侵入性太强。
1.集成了Glide4.5.0
2.集成了rxjava2.0.5和rxandroid2.0.1
3.集成了rxbus,事件总线
4.集成了权限管理RxPermissions
5.预览图片(viewpager,PhotoView图片缩放,longimage长图展示)
/**
* 提供外部预览图片方法
*
* @param position
* @param medias
*/
public void openExternalPreview(int position, List<LocalMedia> medias) {
if (selector != null) {
selector.externalPicturePreview(position, medias);
} else {
throw new NullPointerException("This PictureSelector is Null");
}
}
6.下载图片,提示弹框(也挺漂亮)
7.使用全局config.gradle管理应用版本、第三方库版本
ext {
cfgs = [
compileSdkVersion : 26,
buildToolsVersion : "27.0.2",
minSdkVersion : 14,
targetSdkVersion : 26,
versionCode : 10,
versionName : "2.0.0",
ucropVersionCode : 22,
ucropVersionName : "2.2.0-native",
//open version control
androidSupportVersion: "27.0.2",
glide : "4.5.0",
rxjava : "2.0.5",
rxandroid : "2.0.1"
]
}
8.集成ucrop裁剪库
9.集成recyclerview
10.下拉弹框FolderPopWindow
11.底部弹出框PhotoPopupWindow
12.沉浸式,包immersive
/**
* 具体沉浸的样式,可以根据需要自行修改状态栏和导航栏的颜色
*/
public void immersive() {
ImmersiveManage.immersiveAboveAPI23(this
, colorPrimaryDark
, colorPrimary
, openWhiteStatusBar);
}
四、能用的东西还真不少0.0