使用android调用系统图片(剪切)功能

private Intent formatBmIntent(Bitmap bm) {
//		Intent intent = new Intent("com.android.camera.action.CROP");
		// 在本地选择图片进行剪切
		Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
		intent.setType("image/*");
//		intent.putExtra("data", bm);
		intent.putExtra("crop", "true");
		intent.putExtra("aspectX", 1);
		intent.putExtra("aspectY", 1);
		intent.putExtra("outputX", 200);
		intent.putExtra("outputY", 200);
		intent.putExtra("return-data", true);
		return intent;
	}
/** 获取系统剪切图片的Intent */
	protected Intent getSystemCropIntent(Uri uri) {
		Intent intent = new Intent("com.android.camera.action.CROP");
		intent.setDataAndType(uri,"image/*");
		intent.putExtra("crop", "true");
		intent.putExtra("aspectX", 1);
		intent.putExtra("aspectY", 1);
		intent.putExtra("outputX", outputX);
		intent.putExtra("outputY", outputY);
		intent.putExtra("return-data", true);
		return intent;
	}

	/**
	 * 获取相机图片Intent <br/>
	 * 并将图片存放在 mnt/sdcard/DCIM/Camera/ 下<br />
	 * 
	 * @return 作者:fighter <br />
	 *         创建时间:2013-1-29<br />
	 *         修改时间:<br />
	 */
	protected Intent getCameraIntent(){
		currCameraPhotoFile = new File(cameraDir, getPhotoFileName());
		Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
		intent.putExtra(MediaStore.EXTRA_OUTPUT,
				Uri.fromFile(currCameraPhotoFile));
		return intent;
	}

	/** 获取本地图片 
	 * @throws SDCardException */
	public void getLocolPhoto(){
		Intent intent = localImgIntent();
		activity.startActivityForResult(intent, PHOTO_LOCAL);
	}

猜你喜欢

转载自zyzzsky.iteye.com/blog/1777171