环境:
包裹:(已安装)
import React, {Component} from 'react';
import {View, Text, TouchableOpacity} from 'react-native';
class App extends Component {
render() {
return (<View style={styles.container}>
<View>
<TouchableOpacity style={[styles.boxShadow, shadow]}>
<Text style={styles.text}>LOGIN</Text>
</TouchableOpacity>
</View>
</View>);
}
}
const shadow = {
shadowColor: '#30C1DD',
shadowRadius: 10,
shadowOpacity: 0.6,
elevation: 8,
shadowOffset: {
width: 0,
height: 4
}
}
const styles = {
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center'
},
boxShadow: {
width: 200,
height: 50,
borderRadius: 10,
backgroundColor: '#ed7171',
justifyContent: 'center',
alignItems: 'center'
},
text: {
color: '#ffffff'
}
};
export default App;
有没有办法在Android中实现这样的影子
as shadow仅作为反射原生的道具在iOS中支持
elevation
,但无法更改默认灰色颜色shadowColor
道具而不是在android中实现,因为它只支持iOS 查看示例代码和预览。
这是一个示例快照,我只能使用灰色[默认]来获得高程阴影。
答案 0 :(得分:0)
截至目前,添加阴影的唯一方法是使用
elevation :value
for Android version&gt; 5
或使用
https://github.com/879479119/react-native-shadow
这是第三方插件,但它支持颜色,虽然它到目前为止还不支持RGB
因为没有&#34;影子&#34;在Android的样式列表中属性,如果我们想在组件上添加阴影效果,我们必须修补PNG-24图片,但它非常优雅;因此,这里有一个SVG影子插件来帮助解决这个问题。我们建议您在iOS上使用原生阴影
答案 1 :(得分:0)
**
您可以使用LinearGradient技巧
**
答案 2 :(得分:-1)
使用高程在RN Android上实现阴影。 Added elevation prop #27
<View elevation={5}> </View>