PhotoPicker的简单应用

地址:https://github.com/donglua/PhotoPicker
支持加载gif;
不支持图片剪裁。

导包:
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)  //设置选择照片最大值,默认为9
                        .setGridColumnCount(5)  //设置在选择照片界面中的列数,默认为3
                        .setSelected(selectedPhotos)  //保存选择好的照片,下次选择照片在此集合的基础上添加
                        .setShowCamera(true)  //显示照相机按钮
                        .setShowGif(true)  //设置支持gif
                        .setPreviewEnabled(true)  //正在选择照片时是否可以预览
                        .start(MainActivity.this, PhotoPicker.REQUEST_CODE);

Preview Photo(预览照片)

PhotoPreview.builder()
    .setPhotos(selectedPhotos)
    .setCurrentItem(position)  //预览照片在集合中的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();
        }
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 哈姆雷特这部戏马上就要上演,我们一个个都心情澎湃,兴致勃勃地回家背台词,准备服装。而在这让人难忘的排练过程中也让我...
    小何果阅读 476评论 0 0