神刀安全网

Android多图选择工具


ImagePicker

Android 图片选择工具,支持单选/多选/裁剪/预览/相机拍摄,图片加载可以自由选择Gilde、picasso、ImageLoader等工具,适配Android N。UI色彩来自App的colorPrimarycolorAccent

Sample.apk

Android多图选择工具

Android多图选择工具

Android多图选择工具

Android多图选择工具

Android多图选择工具

Android多图选择工具

添加依赖

   compile 'me.wangyi:imagepicker:+'

使用

  1. 在AndroidManifest.xml中添加权限:
     <uses-permission android:name="android.permission.CAMERA" />  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  2. 在application节点下注册activity
     <activity android:name="me.wangyi.imagepicker.ui.ImagePickerActivity" />  <activity android:name="me.wangyi.imagepicker.ui.ImagePreViewActivity" />

    3.实现自己的ImageLoder,在displayImage方法中可以使用项目中使用的图片加载工具来加载图片

     private class MyImageLoader implements ImagePicker.ImageLoader {      public void displayImage(ImageView imageView, Image image) {          Glide.with(imageView.getContext())                  .load(image.getPath())                  .dontAnimate()                  .placeholder(R.drawable.place_holder)                  .into(imageView);      }  }

    4.开始图片选择
    单选

     new ImagePicker()           .mode(ImagePicker.MODE_SINGLE_SELECT)           .cropEnable(true)//是否开启图片裁剪           .cropOutputX(400)//图片裁剪后保存的宽度           .cropOutputY(400)//图片裁剪后保存的高度           .imageLoader(new MyImageLoader())           .requestCode(REQUEST_PICK)           .start(this);

    多选

    new ImagePicker()          .mode(ImagePicker.MODE_MULTI_SELECT)          .imageLoader(new MyImageLoader())          .selectLimit(selectLimit)//最多选择图片数量          .requestCode(REQUEST_PICK)          .start(this);

    5.在onActivityResult方法中接收返回的

     @Override  protected void onActivityResult(int requestCode, int resultCode, Intent data) {      super.onActivityResult(requestCode, resultCode, data);      if (resultCode == RESULT_OK) {          if (requestCode == REQUEST_PICK) {              ArrayList<Image> imageList = data.getParcelableArrayListExtra(ImagePicker.EXTRA_IMAGE_LIST);              //是否使用原图              boolean fullImage = data.getBooleanExtra(ImagePicker.EXTRA_FULL_IMAGE, false);          }      }  }

    注意事项

    ImagePicker的两个Activity的Theme必须有ActionBar,例如

     <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">      <!-- Customize your theme here. -->      <item name="colorPrimary">@color/colorPrimary</item>      <item name="colorPrimaryDark">@color/colorPrimaryDark</item>      <item name="colorAccent">@color/colorAccent</item>  </style>

    GitHub地址:https://github.com/wangyiwy/ImagePicker

转载本站任何文章请注明:转载至神刀安全网,谢谢神刀安全网 » Android多图选择工具

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址