android 调用系统相机、相册剪切功能

效果图片
这里写图片描述

/** 跳转到系统的拍照功能 */
    protected void takePhoto() {
        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(intent, OPCAMERA);
    }
    //相机拍照
    private static final int OPCAMERA=1;
    //手机相册获取
    private static final int OPPHOTO=2;

    /**
     * 从相册选择
     */
    private void selectPhoto() {
        Intent intent = new Intent(Intent.ACTION_PICK, null);
        intent.setType("image/*");
        intent.putExtra("crop", "true");//设置裁剪功能
        intent.putExtra("aspectX", 1); //宽高比例
        intent.putExtra("aspectY", 1);
        intent.putExtra("outputX", 80); //宽高值
        intent.putExtra("outputY", 80);
        intent.putExtra("return-data", true); //返回裁剪结果
        startActivityForResult(intent, OPPHOTO);
    }

在onActivityResult方法接收返回值

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
       if (requestCode==OPCAMERA){
           if (resultCode==RESULT_OK){
               Bundle bundle = data.getExtras();
               //取出Bitmap
              Bitmap bitmap= (Bitmap) bundle.get("data");

               portrait.setImageBitmap(bitmap);
           }
       }
        if (requestCode==OPPHOTO){
            if (resultCode==RESULT_OK){
                Bundle bundle = data.getExtras();
                Bitmap bitmap= (Bitmap) bundle.get("data");
                portrait.setImageBitmap(bitmap);
            }
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值