在CameraAPI打开后通过意图发送图像

时间:2013-02-22 01:31:24

标签: java android memory camera

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

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

如何在不将图像保存到SD卡的情况下进行此操作?

1 个答案:

答案 0 :(得分:0)

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

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

然后通过意图

 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);

你将不得不使用自定义相机控制希望这有助于。