【发布时间】:2018-04-08 19:59:18
【问题描述】:
我需要在图像周围添加阴影我的图像是一个矩形场,我需要在该矩形场周围添加一个阴影
我想做这样的事情:stackoverflow question
我想知道如何在适用于 android 和 ios 的 react native 中做到这一点
【问题讨论】:
标签: react-native
我需要在图像周围添加阴影我的图像是一个矩形场,我需要在该矩形场周围添加一个阴影
我想做这样的事情:stackoverflow question
我想知道如何在适用于 android 和 ios 的 react native 中做到这一点
【问题讨论】:
标签: react-native
Shadow 仅适用于 iOS。对于 Android,您需要 Elevation。你可以做这样的事情。我目前使用它并且工作正常:
elevationLow: {
...Platform.select({
ios: {
shadowColor: '#000',
shadowOffset: { width: 0, height: 2 },
shadowOpacity: 0.8,
shadowRadius: 2,
},
android: {
elevation: 5,
},
}),
},
【讨论】:
将Image 包裹在View 中(为了语义清晰),然后为视图定义以下样式规则:
shadow: {
shadowColor: '#202020',
shadowOffset: {width: 0, height: 0},
shadowRadius: 5,
},
我在这里做了一个例子:https://snack.expo.io/rJesdOgRZ。但是 atm "snack" 太慢了,以至于很难检查实际结果。但至少代码是可见的,可以作为基准。
【讨论】:
您可以为您的View 使用shadow 样式道具来实现此目的。你会想要
shadowOffset = 接受height 和(可选,我不太喜欢使用它,但是)width 值可以在这些方向上移动你的阴影。
shadowColor = 取一个颜色,类似于backgroundColor,表示阴影的颜色
shadowRadius = 取一个值,将决定你的影子离视图有多远
shadowOpacity = 0 到 1 之间的值,表示阴影存在的强度。
这里有一个您可能想要的快速示例。此代码将制作一个红色圆圈,在圆圈底部可以看到轻微的阴影。这段代码当然是可定制的。
<View style = {{
position: 'absolute', top: 50, left: 50,
backgroundColor: 'red', width: 100, height: 100, borderRadius: 50,
shadowColor: "black",
shadowOffset: { height: 2},
shadowOpacity: 0.3,
}}>
//CONTENT
</View>
【讨论】: