做app的时候经常会遇到头像上传截图这样的功能,截取一个图片网上有不少demo,很复杂,其实安卓本身就自带了一个强大好用的截图功能,比如更换壁纸的时候,你就会看到这个截图功能,下面是调用系统的截图功能来实现截取头像上传:
public void startPhotoZoom(Uri uri) {
Intent intent = new Intent("com.android.camera.action.CROP");
intent.setDataAndType(uri, "image/*");
//下面这个crop=true是设置在开启的Intent中设置显示的VIEW可裁剪
intent.putExtra("crop", "true");
// aspectX aspectY 是宽高的比例
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
// outputX outputY 是裁剪图片宽高
intent.putExtra("outputX", 150);
intent.putExtra("outputY", 150);
intent.putExtra("return-data", true);
startActivityForResult(intent, 3);
}
当选择完图片或者拍完照以后会得到一个uri传到onActivityResult()方法里面,然后就调用上面的函数,把uri传进来就可以跳转到截图的界面
@Override