android 剪切图片

来源:互联网 发布:外贸搜索客户软件 编辑:程序博客网 时间:2024/04/29 15:31

一、调用系统的剪切功能:


事件执行:

@Overridepublic void onClick(View v) {if(null == mUri)return;Intent intent = new Intent();intent.setAction("com.android.camera.action.CROP");intent.setDataAndType(mUri, "image/*");// mUri是已经选择的图片Uriintent.putExtra("crop", "true");intent.putExtra("aspectX", 1);// 裁剪框比例intent.putExtra("aspectY", 1);intent.putExtra("outputX", 150);// 输出图片大小intent.putExtra("outputY", 150);intent.putExtra("return-data", true);MainActivity.this.startActivityForResult(intent, 200);}});

效果图:



二、在onActivityResult中接受剪切数据:

protected void onActivityResult(int requestCode, int resultCode, Intent data) ....

}else if(200 == requestCode){if(resultCode == RESULT_OK){// 拿到剪切数据Bitmap bmap = data.getParcelableExtra("data");// 显示剪切的图像ImageView imageview = (ImageView)this.findViewById(R.id.imageview);imageview.setImageBitmap(bmap);// 图像保存到文件中FileOutputStream foutput = null;try {foutput = new FileOutputStream(this.imageFile);bmap.compress(Bitmap.CompressFormat.PNG, 100, foutput);} catch (FileNotFoundException e) {e.printStackTrace();}finally{if(null != foutput){try {foutput.close();} catch (IOException e) {e.printStackTrace();}}}}


效果图:




原创粉丝点击