这里给出关键部分代码,其余和文章《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();        }        }}

更多相关文章

  1. android中调用系统功能 来显示本地相册图片 拍照 视频 音频功能
  2. Android开发学习:ImageView的scaletype属性
  3. Android(安卓)打开相机、相册获取图片文件,支持Android(安卓)9.0
  4. Android中欢迎界面背景图片放大效果
  5. android 开机动画修改以及默认壁纸
  6. Android使用AsyncTask下载图片,最好使用WeakReference
  7. 转:Bitmap造成OOM的讨论与解决方案
  8. android Gallery实现加载网络图片
  9. 转:Android中几种图像特效处理方法小结

随机推荐

  1. Android(二)HelloWorld,Android(上)
  2. 环境配置
  3. API 23 widget.AnalogClock——属性分析
  4. edittext底部输入
  5. Android(安卓)如何获取RadioGroup选中Rad
  6. android N0 屏蔽某个应用的通知
  7. 安卓开发问题记录
  8. ListView CheckBox点击事件
  9. android 分段显示文本颜色控件
  10. Android(安卓)Settings 修改默认主题为白