问题描述
我在Android手机上使用Expo Camera,并且放大了返回我的记录,并且在拍摄图片或视频时,相机视图似乎失真了。如何将其设置为false,我尝试改用react-native-camera,但是它崩溃了。
<Camera useCamera2Api={false}
ref={(el) => this.camera = el }
style={{ flex: 1,flexDirection: 'column',justifyContent: 'space-between',alignItems: 'flex-start' }}
flashMode={this.state.flashmode ? Camera.Constants.FlashMode.on : Camera.Constants.FlashMode.off}
type={this.state.type}
useNativeZoom={true}
defaultVideoQuality={Camera.Constants.VideoQuality['1080p']}
ratio={'16:9'}
autoFocus={Camera.Constants.AutoFocus.on}>
</Camera>
我使用react-native-video渲染视频:
<Video source={{ uri: this.state.preview }}
style={{ flex: 1,width:Dimensions.get('screen').width,height:Dimensions.get('screen').height,backgroundColor: '#FFFFFF',zIndex: 0 }} />
我的React本机版本是0.63。
解决方法
Video 组件中有一个名为“resizeMode”的属性。尝试将此道具设置为“覆盖”,如下所示:
<Video source={{ uri: this.state.preview }}
style={{ flex: 1,width:Dimensions.get('screen').width,height:Dimensions.get('screen').height,resizeMode={"cover"}
backgroundColor: '#FFFFFF',zIndex: 0 }} />