Android 调用系统剪裁工具剪裁用户头像

本文详细介绍在Android应用中如何实现图片的选择、裁剪及压缩功能。通过在Activity中加入特定代码段,用户可以选择图片并进行裁剪,之后调用压缩方法确保图片大小适合上传至服务器,避免因图片过大导致的传输错误。

在Activity中加入以下代码段:

 

private final int CODE_CROP = 0x131;//用于请求系统剪裁的请求码

    private Handler handler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            switch (msg.what){
                case ImageCropUtil.Hand_Compress_Ok://图片压缩完成
                    modify_type = MODIFY_USER_HEAD_IMAGE;
                    File file = new File(ImageCropUtil.getHeadCompressPath());//图片地址在ImageCropUtil中定义好的固定值
                    mFiles.put(file.getName(), file);
                    presenter.modifyUserHeadImage(mFiles);
                    break;
            }

        }
    };


一、在用户选择好图片后掉用方法如下:(Activity中调用)

 

 

//跳转裁剪图片
                    ImageCropUtil.cropPhoto(this, headPath, CODE_CROP);

二、剪裁完成后调用压缩图片方法:【activity中的onActivityResult方法中调用】(可以不调用,如果不调用你就发送到服务端很可能报错:accep 427 byte but received 8192)

 

 

 if (requestCode == CODE_CROP && resultCode == RESULT_OK) {
            ImageCropUtil.compress15k(this, ImageCropUtil.ouputFilePath, handler);
        }

三、剪裁完成后会返回到handler中

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值