|
当调用android手机相机的剪切图片时
/**
* 调用android系统自带的图片裁剪,把用户选择的图片
* 裁剪成适合用户手机的大小
* @param imagePath
*/
public void startPhotoZoom(String imagePath) {
//获得裁剪图片的路径文件
File file = new File(imagePath);
//获得裁剪图片的名字
originName = file.getName();
//获得裁剪图片的uri
Uri uri=Uri.fromFile(file);
//调用intent跳转的裁间页面
Intent intent = new Intent("com.android.camera.action.CROP");
//传入裁剪图片的路径uri和需要裁剪的格式
intent.setDataAndType(uri, ChooseName.IMAGE_UNSPECIFIED);
//可裁剪状态
intent.putExtra("crop", "true");
// aspectX aspectY 是宽高的比例
intent.putExtra("aspectX",dm.widthPixels * 2);
intent.putExtra("aspectY", dm.heightPixels);
// outputX outputY 是裁剪图片宽高
intent.putExtra("outputX", dm.widthPixels * 22/13);
intent.putExtra("outputY", dm.heightPixels * 12/13);
System.out.println(dm.widthPixels * 24/13);
System.out.println(dm.heightPixels * 12/13);
intent.putExtra("return-data", true);
startActivityForResult(intent, ChooseName.PHOTORESOULT);
}
当 intent.putExtra("outputX", dm.widthPixels*2 );
intent.putExtra("outputY", dm.heightPixels );
中dm.heightPixels , dm.widthPixels*2参数过大时就会卡刷,我裁剪的是手机屏幕大小,当每次我用屏幕分辨率高一点的手机时
就会卡死,我感觉好像是应为参数大,处理图片慢,造成的,这里好像应该用辅助线程,但又不知道怎么用,请知道的大牛帮帮小弟啊 |
|