如何使用相机意图多次拍照

时间:2014-02-15 18:20:46

标签: android android-intent camera

我遇到类似(How to take multiple photos before dismissing camera intent?)的问题!

他怎么用过:

Intent intent = new Intent(MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA);

我需要像这样使用:

    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    for(int i=0;i<2;i++){
        fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE);

        intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);

    // start the image capture Intent
        startActivityForResult(intent, CAMERA_CAPTURE_IMAGE_REQUEST_CODE);
   }

因为我需要拍摄2张照片,使用默认检查或x使用MediaStore.ACTION_IMAGE_CAPTURE进行预览(以消除将其显示到图像视图的麻烦,再次返回捕捉)

然后只回到主要活动,知道我拍了2张照片/保存的数据。

然而,当我使用它进行循环时,它只返回最后拍摄的图像,并且它重新调整了2次(我有一个代码可以调整原始捕获照片的25%,所以在代码执行后,它调整为6.25在返回主要活动之前原始的百分比(25%的1/4)。

有人可以告诉我发生了什么并给我一个解决方案吗?非常感谢提前! :d

尽可能地,我想使用内置的相机应用程序,因为它具有很多其他功能,与构建自己的自定义相机的麻烦相比。顺便说一句我使用android jellybean。 4.1.1

1 个答案:

答案 0 :(得分:3)

从您从第一个startActivityForResult()获得的onActivityResult()拨打第二个startActivityForResult()。请记住startActivityForResult()是异步的 - 其他活动不会立即开始。