Android--启动系统的剪切图像功能并返回结果
直接上代码:
1 //启动裁剪图片 2 private void cropPhotoUri(Uri uri){ 3 Intent intent = new Intent("com.android.camera.action.CROP"); 4 intent.setDataAndType(uri,"image/*"); //设置裁剪类型 5 //设置裁剪 6 intent.putExtra("crop","true"); 7 //设置宽度高度比例 8 intent.putExtra("aspectX",1); 9 intent.putExtra("aspectY",1); 10 //设置图片的 长度 宽度 11 intent.putExtra("outputX",150); 12 intent.putExtra("outputY",150); 13 intent.putExtra("return-data",true); 14 startActivityForResult(intent, CROP_PHOTO); 15 }
同样我们需要重写onActivityResult()方法去获取返回结果
1 @Override 2 protected void onActivityResult(int requestCode, int resultCode, Intent data) { 3 super.onActivityResult(requestCode, resultCode, data); 4 if (data!= null) { 5 6 Bundle bundle = data.getExtras(); 7 photo = bundle.getParcelable("data"); 8 } 9 }
这里bundle.getParcelable(“data”) 里面的Key值"data" 是系统定义好了的,我们不需要修改
新人学习中,也不太会总结,有做的不对的地方希望各位大神指出,谢谢。