Estoy trabajando en un proyecto nativo de reacción. Quiero proporcionar sombra para ver. Pero se estaba extendiendo así.
Pero lo que quiero es:
Obtuve la respuesta de que necesito agregar un color de fondo aquí: https://taketo.site/solved Y eso realmente resuelve mi problema, pero solo cuando agrego el color de fondo de la hoja de estilo. Pero mi problema es que quiero obtener el color de fondo de los accesorios, ya que cada vez que se representa la vista, no tendrá el mismo color de fondo, sería diferente. Pero cuando trato de proporcionar color de fondo de los accesorios, nuevamente da sombra como en la primera imagen. Aquí está mi código:
archivo componente:
import React from 'react'; import { View } from 'react-native'; import { styles } from './styles'; class ShadowCard extends React.Component { constructor(props) { super(props); } render() { return ( <View style={[ styles.card, { width: this.props.width, height: this.props.height, backgroundColor: this.props.backgroundColor, }, ]}> {this.props.children} </View> ); } } export default ShadowCard;archivo de hoja de estilo:
import { StyleSheet } from 'react-native'; export const styles = StyleSheet.create({ card: { shadowColor: '#000', shadowOffset: { width: 0, height: 2 }, shadowOpacity: 0.5, shadowRadius: 2, elevation: 10, borderRadius: 12, margin: 12, }, });Entonces, ¿qué debo hacer para poder tomar el color de fondo de los accesorios y la sombra se muestra como en la segunda imagen?
Probablemente pueda hacer algo como esto -> Envuelva su Vista de carrito actual en otra Vista con desbordamiento oculto para evitar que la sombra aparezca sobre el cuadro y luego agregue un poco de relleno inferior para mostrar la sombra debajo del cuadro para Android y para iOS, mantener el shadowOffset como está actualmente
<View style={{ overflow: 'hidden', paddingBottom: 60 }}> <View style={{ width: this.props.width, height: this.props.height, backgroundColor: this.props.backgroundColor, shadowOffset: { width: 2, height: 6 }, shadowRadius: 6, shadowOpacity: 0.2, elevation: 15, }}> {this.props.children} </View> </View>