Share from here Wiki
DOWNLOAD
Gradle
repositories {
jcenter()
}
dependencies {
compile'com.zhihu.android:matisse:0.4.3'
}
Check out Matisse releases to see more unstable versions.
Permission :The library requires two permissions:
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
So if you are targeting Android 6.0+, you need to handle runtime permission request before next step.
Simple usage snippet
Start Matisse Activity from current Activity or Fragment:
List mSelected;
@Override
protected void onActivityResult ( intrequestCode,intresultCode,Intentdata ) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==REQUEST_CODE_CHOOSE&&resultCode==RESULT_OK) {
mSelected=Matisse.obtainResult(data);
Log.d("Matisse","mSelected:"+mSelected);
}
}
Matisse.from(MainActivity.this)
.choose(MimeType.allOf())
.countable(true)
.maxSelectable(9)
.addFilter(newGifSizeFilter(320,320,5Filter.KFilter.K))
.gridExpectedSize(getResources()
.getDimensionPixelSize(R.dimen.grid_expected_size))
.restrictOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED)
.thumbnailScale(0.85f)
.imageEngine(newGlideEngine())
.forResult(REQUEST_CODE_CHOOSE);