takePicture = async function() {
if (this.camera) {
const options = { quality: 0.5, base64: true, };
const data = await this.camera.takePictureAsync(options);
this.setState({path: data.uri})
}
}一旦我调用我的takePicture函数来捕捉图像,相机仍然在移动,不会暂停。我想让摄像机暂停,然后给我看图像。
这里有没有需要处理Promise的地方?如果是,我不知道在哪里做,也不知道如何做。
我也尝试过使用pauseAfterCapture:true,但它仍然需要1到2秒来捕获图像。
我知道这是一个古老的问题,但目前还没有解决方案可以帮助我。请帮帮忙。
发布于 2020-03-09 19:26:09
我还发现可用的摄像头组件非常慢,这就是为什么我创建了react-native-fast-camera,并将其开源供公众使用。它是非常可定制的,并且完全可以由react原生组件控制。
注意:目前安卓版本仍在开发中。
下面是一个示例:
import FastCamera, { Methods } from 'react-native-fast-camera';
<FastCamera style={{ height: cameraHeight, width: cameraWidth }}
onSaveSuccess={imageUrl => {
console.log("onSaveSuccess: ", imageUrl);
}}
onGalleryImage={imageUrl => {
console.log("onGalleryImage: ", imageUrl);
}}
onFlashToggle={isflashOn => {
console.log('flash info: ', isflashOn);
}}
>
{/* here render your buttons to control the camera component */}
<Button
title="capture picture"
onPress={()=> Methods.takePicture();}
/>
</FastCamera>这是一个截图:

https://stackoverflow.com/questions/54285002
复制相似问题