我需要在非纯色背景上制作View
圆形。
我尝试使用borderRadius
和overflow: 'hidden'
,但它无效。我发现这是React Native的一个已知问题:https://github.com/facebook/react-native/issues/3198
似乎有固定背景上的图像的变通方法,但我的背景是动态的,并且在图像之上,因此我无法对其进行硬编码。
有没有其他方法可以让这样的东西起作用?
黑色正方形应为圆形:
这是代码(P.S。我正在使用本地webrtc,我正在获取RTCView,但我认为这适用于普通的View
):
const styles = StyleSheet.create({
remoteVideoContainer: {
borderRadius: 50,
height: 100,
marginBottom: 20,
width: 100,
overflow: 'hidden',
backgroundColor: 'green',
},
video: {
flex: 1,
resizeMode: 'cover',
backgroundColor: 'blue',
},
});
export default VideoView = ({
videoURL,
}) => {
return (
<View style={styles.remoteVideoContainer}>
<RTCView
style={styles.video}
streamURL={videoURL}
mirror={true}
objectFit="cover"
/>
</View>
);
};
答案 0 :(得分:0)
我甚至不确定你是否可以设置RTCView的样式。代码不会暴露样式道具。 https://github.com/oney/react-native-webrtc/blob/master/RTCView.js