为什么 React Native 中的阴影应用于文本?

Dan*_*rst 4 shadow react-native

我有以下组件:

<TouchableOpacity style={styles.event} onPress={onPress}>
      <View style={styles.dateContainer}>
        <Text style={styles.eventDate}>Sent at : {event.sentAt}</Text>
      </View>
      <View style={styles.eventTextContainer}>
        <Text style={styles.eventText}>{event.text}</Text>
      </View>
    </TouchableOpacity>
Run Code Online (Sandbox Code Playgroud)

然后在我的风格中:

event: {
        shadowColor: "#000",
        shadowOffset: {
        width: 5,
        height: 5,
        },
        shadowOpacity: 0.75,
        shadowRadius: 3.84,
    ...Platform.select({
      android: {
        elevation: 5,
      },
    }),
eventTextContainer: {
        flex: 1,
        flexDirection: 'column',
        justifyContent: 'center',
    },
    eventText: {
        fontSize: 20,
        fontWeight: '700',
    }
Run Code Online (Sandbox Code Playgroud)

阴影被应用于文本,这是我不想要的,只想将其应用于可触摸的不透明度,我做错了什么?

在此输入图像描述

And*_*ino 5

这类似于另一个stackoverflow 问题,避免此问题的关键是将背景颜色应用于具有阴影样式的容器,在您的情况下是事件样式

event: {
  shadowColor: "#000",
  shadowOffset: {
    width: 5,
    height: 5,
  },
  shadowOpacity: 0.75,
  shadowRadius: 3.84,
  ...Platform.select({
    android: {
    elevation: 5,
  },
  backgroundColor: "#FFF",
}),
Run Code Online (Sandbox Code Playgroud)