在 QRcodeScanner React native 中打开手电筒 on/off

Turn flashlight on/off In QRcodeScanner React native

我正在使用 react-native-qrcode-scanner,我想做的是:当用户按下手电筒图标时,flashLight 会亮起 我这样做了:

<QRCodeScanner
        showMarker
        onRead={this.onSuccess.bind(this)}
        cameraStyle={{ height: SCREEN_HEIGHT }}
        cameraProps={{ flashMode: this.state.flashLight ? RNCamera.Constants.FlashMode.on : RNCamera.Constants.FlashMode.off, captureAudio: false }}

相机道具有效 但是当我改变 state.flashLight(真或假)时,闪光灯没有改变

知道如何根据状态改变相机道具吗??

尝试替换:

RNCamera.Constants.FlashMode.on

与:

RNCamera.Constants.FlashMode.torch

手电筒现在打开了吗?

使用react-native-qrcode-scanner 版本1.2.2或以上

尝试使用 flashMode 而不是 cameraProps

这是一个工作示例:

      <QRCodeScanner
              ref={(node) => { this.scanner = node }}
              onRead={this.onSuccess.bind(this)}
              showMarker
              cameraStyle={{ height: SCREEN_HEIGHT }}
              customMarker={this.renderCustomMarker}
              flashMode={this.state.torchEnable ? RNCamera.Constants.FlashMode.torch : RNCamera.Constants.FlashMode.off}
              />

this.state.torchEnable是一个布尔变量,用于设置闪光灯开或关。

有关详细信息,请阅读 方法 > flashMode

上的 Github repo 说明