在imageview中显示图像时代码崩溃

时间:2018-12-21 01:06:56

标签: android bitmap android-camera android-gallery

当我从相机拍摄照片时,Thia代码崩溃。但是当我从图库中选择一张照片时,它的效果很好。请指导我。我调试此代码。当我从相机拍摄照片时,数据值变得为空

@Override
        public void onActivityResult(int requestCode, int resultCode, Intent data) {
            super.onActivityResult(requestCode, resultCode, data);

            if (resultCode == Activity.RESULT_OK || requestCode == 200||requestCode==CAMERA_REQUEST) {
                Glide.with(this).load(data.getData()).into(mDishUploadImg);

                Bitmap bm = null;
                try {
                    bm = MediaStore.Images.Media.getBitmap(mainActivity.getContentResolver(), data.getData());
                } catch (IOException e) {
                    e.printStackTrace();
                }
                ByteArrayOutputStream baos = new ByteArrayOutputStream();
                bm.compress(Bitmap.CompressFormat.JPEG, 50, baos); //bm is the bitmap object
                byte[] b = baos.toByteArray();
                base64img = Base64.encodeToString(b, Base64.NO_WRAP);
            }
        }

1 个答案:

答案 0 :(得分:0)

请尝试在您的 if 语句中添加data!=null && data.getData() != null,并且也不要使用||,而应使用&&