剪切图片-扩展android 选择图片(从手机照相机或手机图片)
16lz
2022-04-06
这里给出关键部分代码,其余和文章《android 选择图片(从手机照相机或手机图片)》 类似
private void doCrop() {final ArrayList<CropOption> cropOptions = new ArrayList<CropOption>(); Intent intent = new Intent("com.android.camera.action.CROP"); intent.setType("image/*"); List<ResolveInfo> list = getPackageManager().queryIntentActivities( intent, 0 ); int size = list.size(); if (size == 0) { Toast.makeText(this, "Can not find image crop app", Toast.LENGTH_SHORT).show(); return; } else { intent.setData(mImageCaptureUri); intent.putExtra("outputX", 200); intent.putExtra("outputY", 200); intent.putExtra("aspectX", 1); intent.putExtra("aspectY", 1); intent.putExtra("scale", true); intent.putExtra("return-data", true); if (size == 1) { Intent i = new Intent(intent); ResolveInfo res= list.get(0); i.setComponent( new ComponentName(res.activityInfo.packageName, res.activityInfo.name)); startActivityForResult(i, CROP_FROM_CAMERA); } else { for (ResolveInfo res : list) { final CropOption co = new CropOption(); co.title = getPackageManager().getApplicationLabel(res.activityInfo.applicationInfo); co.icon= getPackageManager().getApplicationIcon(res.activityInfo.applicationInfo); co.appIntent= new Intent(intent); co.appIntent.setComponent( new ComponentName(res.activityInfo.packageName, res.activityInfo.name)); cropOptions.add(co); } CropOptionAdapter adapter = new CropOptionAdapter(getApplicationContext(), cropOptions); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Choose Crop App"); builder.setAdapter( adapter, new DialogInterface.OnClickListener() { public void onClick( DialogInterface dialog, int item ) { startActivityForResult( cropOptions.get(item).appIntent, CROP_FROM_CAMERA); } }); builder.setOnCancelListener( new DialogInterface.OnCancelListener() { @Override public void onCancel( DialogInterface dialog ) { if (mImageCaptureUri != null ) { getContentResolver().delete(mImageCaptureUri, null, null ); mImageCaptureUri = null; } } } ); AlertDialog alert = builder.create(); alert.show(); } }}
更多相关文章
- android中调用系统功能 来显示本地相册图片 拍照 视频 音频功能
- Android开发学习:ImageView的scaletype属性
- Android(安卓)打开相机、相册获取图片文件,支持Android(安卓)9.0
- Android中欢迎界面背景图片放大效果
- android 开机动画修改以及默认壁纸
- Android使用AsyncTask下载图片,最好使用WeakReference
- 转:Bitmap造成OOM的讨论与解决方案
- android Gallery实现加载网络图片
- 转:Android中几种图像特效处理方法小结