0

我正在尝试为 android 手机构建一个功能,该功能将打开 CameraAPI,然后将捕获的图片发送到新活动。

在这个活动中,我需要它来显示图像的预览,然后保存。

我怎么能这样做而不必将图像保存到 SD 卡?

4

1 回答 1

0

您可以将图像存储为位图,然后将其转换为字节数组,然后通过下面的代码传输到其他活动

 Bitmap bitmapPicture= "PICTURE FROM CAMERA";
 ByteArrayOutputStream bytes = new ByteArrayOutputStream();
 bitmapPicture.compress(Bitmap.CompressFormat.JPEG, 40, bytes);

然后通过 Intent

 Intent imagepass = new Intent(Cam.this,Preview.class);
 imagepass.putExtra("imagepass", bytes.toByteArray());
 startActivity(imagepass);

在其他活动中,我们必须接收字节数组并转换为位图并通过 imageview 显示

    Bundle extras = getIntent().getExtras();
    byte[] byteArray = extras.getByteArray("imagepass");
    Bitmap bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);

    ImageView iv=(ImageView) findViewById(R.id.imgvw2);
    iv.setImageBitmap(bmp);

您将不得不使用自定义相机控制希望这会有所帮助。

于 2013-03-07T11:11:05.653 回答