一个图片选取的 Material 风格的 Dialog:HVPhotoHunter

jopen 8年前

一个选取图片 Material Design 风格的 Dialog,参考了 EasyImage 这个项目。

功能

  • 从相册中选取图片
  • 拍照获取图片

截图

如何使用

打开相册

// 构建 HVGalleryHunter 的实例  mHVGalleryHunter = new HVGalleryHunter(this);    dialog.setOnChooseGalleryListener(new HVChosePicDialog.OnChooseGalleryListener() {            @Override public void chooseGallery() {              mHVGalleryHunter.openGallery();            }          });

拍照

// 构建 HVCameraHunter 的实例  mCameraHunter = new HVCameraHunter(this);    dialog.setOnChooseCameraListener(new HVChosePicDialog.OnChooseCameraListener() {            @Override public void chooseCamera() {              mCameraHunter.openCamera();            }          });

获得图片 File

// 在 onActivityResult 方法中得到 File  @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) {      super.onActivityResult(requestCode, resultCode, data);        // 捕获拍照的结果      mCameraHunter.handleActivityResult(requestCode, resultCode, new HVCameraHunter.Callback() {          @Override public void onCapturePhotoFailed(Exception e) {          }          @Override public void onCaptureSucceed(File imageFile) {          Log.i(TAG, "CameraHunter onCaptureSucceed -->>" + imageFile.getAbsolutePath());          Glide.with(MainActivity.this).load(imageFile).centerCrop().into(mPhotoImageView);        }          @Override public void onCanceled(File imageFile) {          Log.i(TAG, "CameraHunter onCanceled -->>" + imageFile.getAbsolutePath());        }      });      // 捕获相册返回的结果      mHVGalleryHunter.handleActivityResult(requestCode, resultCode, data,          new HVGalleryHunter.Callback() {            @Override public void onCapturePhotoFailed(Exception error) {              }              @Override public void onCaptureSucceed(File imageFile) {              Log.i(TAG, "HVGalleryHunter onCaptureSucceed -->>" + imageFile.getAbsolutePath());              Glide.with(MainActivity.this).load(imageFile).centerCrop().into(mPhotoImageView);            }              @Override public void onCanceled() {              Log.i(TAG, "HVGalleryHunter onCanceled -->>");            }          });    }

项目主页:http://www.open-open.com/lib/view/home/1447768377134