地址:https://github.com/donglua/PhotoPicker
支持加載gif;
不支持圖片剪裁。
導(dǎo)包:
compile 'me.iwf.photopicker:PhotoPicker:0.9.5@aar'
compile 'com.android.support:recyclerview-v7:25.3.1'
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.android.support:design:25.3.1'
清單文件:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA" />
<application
...
>
...
<activity android:name="me.iwf.photopicker.PhotoPickerActivity"
android:theme="@style/Theme.AppCompat.NoActionBar"
/>
<activity android:name="me.iwf.photopicker.PhotoPagerActivity"
android:theme="@style/Theme.AppCompat.NoActionBar"/>
</application>
</manifest>
基本用法代碼:
Pick Photo(選擇照片)
PhotoPicker.builder()
.setPhotoCount(9) //設(shè)置選擇照片最大值,默認(rèn)為9
.setGridColumnCount(5) //設(shè)置在選擇照片界面中的列數(shù),默認(rèn)為3
.setSelected(selectedPhotos) //保存選擇好的照片,下次選擇照片在此集合的基礎(chǔ)上添加
.setShowCamera(true) //顯示照相機(jī)按鈕
.setShowGif(true) //設(shè)置支持gif
.setPreviewEnabled(true) //正在選擇照片時(shí)是否可以預(yù)覽
.start(MainActivity.this, PhotoPicker.REQUEST_CODE);
Preview Photo(預(yù)覽照片)
PhotoPreview.builder()
.setPhotos(selectedPhotos)
.setCurrentItem(position) //預(yù)覽照片在集合中的position
.setShowDeleteButton(false) //是否顯示刪除按鈕
.start(MainActivity.this);
將選擇后的照片返回顯示
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK && (requestCode == PhotoPicker.REQUEST_CODE || requestCode == PhotoPreview.REQUEST_CODE)) {
List<String> photos = null;
if (data != null) {
photos = data.getStringArrayListExtra(PhotoPicker.KEY_SELECTED_PHOTOS);
}
selectedPhotos.clear();
if (photos != null) {
selectedPhotos.addAll(photos);
}
mPicAdapter.notifyDataSetChanged();
}
}