我遇到类似(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
答案 0 :(得分:3)
从您从第一个startActivityForResult()
获得的onActivityResult()
拨打第二个startActivityForResult()
。请记住startActivityForResult()
是异步的 - 其他活动不会立即开始。