一個圖片選取的 Material 風格的 Dialog:HVPhotoHunter
一個選取圖片 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 -->>");
}
});
} 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!
