是这样的:我使用系统的图片浏览器,然后让它自动跳到图片裁切界面,当我们定义了返回的图片大小过大,而我们实际的图片像素达不到时,系统为我们自动地填充了不够的像素成黑色,那么我们怎么样来解决这个问题呢?不说了,上代码:
Intent intent = new Intent("android.intent.action.PICK");
intent.setDataAndType(
MediaStore.Images.Media.INTERNAL_CONTENT_URI, "image/*");
intent.putExtra("output", Uri.fromFile(sdcardTempFile));
intent.putExtra("crop", "true");
intent.putExtra("aspectX", getPicWidth>0 ? getPicWidth: DEFALUT_WIDTH);// 裁剪框比例
intent.putExtra("aspectY", getPicHeight>0 ? getPicWidth: DEFALUT_HEIGHT);
intent.putExtra("outputX", getPicWidth>0 ? getPicWidth: DEFALUT_WIDTH);// 输出图片大小
intent.putExtra("outputY", getPicHeight>0 ? getPicWidth: DEFALUT_HEIGHT);
//加上下面的这两句之后,系统就会把图片给我们拉伸了,哇哈哈,愁死我例差点
intent.putExtra("scale",true);
intent.putExtra("scaleUpIfNeeded", true);
context.startActivityForResult(intent, RCODE_FROM_ALBUME);