具体需求是:拍照或相册选取完毕后,先进入系统裁剪界面,裁剪完毕后再显示或保存图片,下面看下截图部分所要调用的代码:
//截取图片
public void cropImage(Uri uri, int outputX, int outputY, int requestCode){
//裁剪图片意图
Intent intent = new Intent("com.android.camera.action.CROP");
intent.setDataAndType(uri, "image/*");
intent.putExtra("crop", "true");
//裁剪框的比例,1:1
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
//裁剪后输出图片的尺寸大小
intent.putExtra("outputX", outputX);
intent.putExtra("outputY", outputY);
//图片格式
intent.putExtra("outputFormat", "JPEG");
intent.putExtra("noFaceDetection", true);
intent.putExtra("return-data", true);
startActivityForResult(intent, requestCode);
}
例如,从相册选择图片后先调用裁剪功能代码如下:
Intent openAlbumIntent = new Intent(Intent.ACTION_GET_CONTENT);
openAlbumIntent.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, "image/*");
startActivityForResult(openAlbumIntent, REQUEST_CODE);
接下来在onActivityResult里面对裁剪后的图片进行处理,调用上面的cropImage()方法,将URI传入,500是指定裁剪后图片的尺寸,最后一个参数为标识码:
Uri uri = data.getData();
cropImage(uri, 500, 500, CROP_PICTURE);
处理裁剪后的图片就和之前一样,这里只贴出代码片段仅供参考:
case CROP_PICTURE:
Bitmap photo = null;
Uri photoUri = data.getData();
if (photoUri != null) {
photo = BitmapFactory.decodeFile(photoUri.getPath());
}
if (photo == null) {
Bundle extra = data.getExtras();
if (extra != null) {
photo = (Bitmap)extra.get("data");
ByteArrayOutputStream stream = new ByteArrayOutputStream();
photo.compress(Bitmap.CompressFormat.JPEG, 100, stream);
}
}
iv_image.setImageBitmap(photo);
break;
分享到:
相关推荐
在Android平台上,开发一款应用,让...以上就是Android拍照、相册选取图片后进行剪切功能的主要知识点。在实际开发中,还需要考虑性能优化、兼容性问题以及用户体验等多方面因素,以打造出高效、稳定且用户友好的应用。
在Android开发中,用户经常需要从相册...以上就是Android下从相册选取或拍照选取一张相片并进行剪切的主要步骤和涉及的关键知识点。在实际开发中,还需要注意异常处理、用户体验优化以及适配不同Android版本等问题。
这个"Android拍照、相册选取、裁剪图片综合"项目是针对这些需求的解决方案,它已经修复了网上公开版本存在的各种问题,如路径错误和其他运行时异常,确保在不同设备上,如三星和华为手机上都能稳定运行,具有良好的...
在Android应用开发中,用户头像的选取...通过以上步骤,你可以实现Android应用中从相册选取图片、裁剪成特定尺寸并上传至服务器的功能。在实际开发中,还可以根据需求进行定制化,例如添加预览功能、自定义裁剪样式等。
"拍照和相册选取图片并裁剪得到路径"这个功能是移动应用中常见的一个模块,涉及到Android和iOS系统的多媒体处理、权限管理以及网络上传等多个知识点。 1. **多媒体权限管理**: 在Android 6.0(API级别23)及以上...
本篇文章将详细讲解如何在Android应用中实现自定义比例的图片裁剪,包括从相机拍照和相册选取图片后进行裁剪,并重点介绍16:9和10:7这两种常见比例的裁剪方法。 首先,我们需要了解Android中的Intent机制,它是...
总之,实现"拍照/相册/裁剪图片"功能需要对Android系统的相机API、相册访问权限、图片处理有深入了解,并能灵活应对不同设备的兼容性问题。在这个过程中,不断学习和优化,可以提升应用的质量和用户体验。
接着,我们将实现从相册选取图片的功能。这通常通过调用系统提供的Intent来完成: ```java Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); ...
总结起来,Android获取并裁剪图片涉及到的主要知识点包括:Intent交互、多媒体处理、权限管理、自定义视图(如裁剪界面)以及文件操作。理解并熟练掌握这些知识,将有助于开发出更完善的Android应用。
在Android开发中,设置头像是一个常见的功能,用户可能需要从相册中选取照片或直接通过相机拍照来完成这一操作。本教程将详细介绍如何在Android应用中实现这一功能,包括支持拍照、裁剪以及访问相册,并修复了部分...
本示例"Android拍照、相册选取、截图综合Demo"旨在提供一个全面的解决方案,帮助开发者处理这些功能,并解决由Bitmap对象可能导致的内存溢出问题。以下是关于这个Demo的详细知识点: 1. **相机拍照**: - Android...
在移动应用开发中,用户经常需要上传或者选择个人图片,这就涉及到拍照、相册选取以及图像裁剪等操作。这个“拍照和相册选取图片加裁剪源码”提供了一个简洁而强大的解决方案,使得开发者可以轻松集成这些功能到自己...
综上所述,Android中实现"拍照或选取指定区域的图片"的完美解决方案,主要涉及以下几个步骤:引入`CropImage`库,设置相机和相册权限,启动相机或相册选取图片,调用裁剪接口,以及处理裁剪结果。通过这个方案,...
以上就是实现"android圆形头像拍照相册选取上传"所需的主要技术点,涵盖了图片选择、拍照、裁剪、处理和上传等多个环节。在实际开发中,你还需要结合具体需求,对每个步骤进行细致的定制和优化。
在Android应用开发中,用户头像的设置是一个常见的需求,用户可能需要从相机或相册选取照片,并对其进行裁剪以适应应用的特定显示要求。这个功能涉及到多个Android SDK中的组件和API,包括Intent、Bitmap、Uri以及...
在Android开发中,"Android 拍照相册图片多选"是一个常见的需求,尤其在社交、电商等应用中,用户可能需要从相册中选取多张图片进行上传或者分享。这个功能涉及到多个关键技术点,下面将详细阐述。 首先,我们要...
在Android应用开发中,用户经常需要通过拍照或者从相册选取照片,并且有时需要对选取的照片进行裁剪,以满足特定尺寸的要求。这个过程涉及到图片处理的重要知识点,包括图像选择、图片裁剪以及关注分辨率。以下是对...
在Android应用开发中,"拍照和相册选择裁剪图片"是常见的功能需求,尤其是在社交、分享类应用中。这个功能允许用户通过相机拍摄新照片或从设备的相册中选取已有图片,然后进行裁剪以适应特定的尺寸或比例。在API 13...
Android 获取照片、裁剪图片、压缩图片 Android 获取照片、裁剪图片、压缩图片是 Android 应用程序中非常重要的功能,特别是在图片上传和分享方面。然而,Android 系统的碎片化和权限机制的变化,使得开发者在实现...
这个资源包“Android中照相,从相册选取照片,android拍照或从相册选择,Java源码.zip”提供了一些Java源代码,帮助开发者实现这些功能。下面将详细介绍如何在Android应用中集成拍照和从相册选择图片的流程。 1. **...