Android中裁剪一张图片

做一个相框的部分,功能是点击相框可选择一张照片进行裁剪,得到的部分重新set到Imageview上去。
点击Imageview启动一个Intent,这个Intent具体信息如下所示:

private Intent getCropImgIntent(int width, int height) {
        Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null);
        intent.setType("image/*");
        intent.putExtra("crop", "true");
        // 裁剪框比例
        intent.putExtra("aspectX", 2);
        intent.putExtra("aspectY", 1);
        // 图片输出大小
        intent.putExtra("outputX", width);
        intent.putExtra("outputY", height);
        intent.putExtra("return-data", true);
        return intent;
    }

同时我们传进来宽和高的数据,可自由进行裁剪,从这里我们得到一个带着数据的Intent。

之后,我们可以重写Activity的onActivityResult方法,在这个方法里处理上面返回的Intent数据。

        if (resultCode == RESULT_OK) {
              Bitmap tempBmp = intent.getParcelableExtra("data");
            }

将得到的tempBmp设置到Imageview上去,如果需要的话,还可以在这里对bitmap进行自己的处理等等。

posted @ 2013-10-16 15:33  wesley.du  阅读(189)  评论(0编辑  收藏  举报