Sr. moayed
Tengo touchable en reaccionar nativo, dentro de touchable tengo imagen y en prensa como esta
<TouchableHighlight >
<Image style={styles.imagestyle}
source={require('./ic_action_name.png')} />
onPress={() => this.moveToAddNewCustomer()}>
</TouchableHighlight>
Cuando traté de ejecutar la aplicación, recibí este error
Se espera que React.Childeren.only reciba un solo elemento React child
¿Cómo arreglar esto?
Venkatesh Somu
Tienes que hacerlo así:
<TouchableHighlight onPress={() => this.moveToAddNewCustomer()}>
<Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableHighlight>
o
<TouchableOpacity onPress={()=>this.moveToAddNewCustomer()}>
<Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableOpacity>
-
Esta solución no funciona en iOS. Estoy usando 0.63. ¿Cual podría ser el problema?
– Piensa y codifica
27 de julio de 2021 a las 15:25
-
@ Mighty, te sugiero que uses react-native-material-ripple o TouchableWithoutFeedback.
– burro
2 de marzo de 2022 a las 6:54
De forma predeterminada, no hay clics ni eventos adjuntos con ninguna de las vistas en React Native como React.js. Hay principalmente dos vistas diseñadas específicamente para manejar eventos táctiles. Ellos son TouchableOpacity
y TouchableHighlight
. Puede resolver su problema envolviendo su Image
componente con TouchableOpacity
o TouchableHighlight
.
<TouchableHighlight onPress={() => this.moveToAddNewCustomer()}>
<Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableHighlight>
si
TouchableHighlight onPress={() => this.moveToAddNewCustomer()}>
<Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableHighlight>
no funcionó, deberías poner tu imagen en un <view>
Narayan Shrestha
Resolví mi problema usando “TouchableWithoutFeedback”
<TouchableWithoutFeedback
onPress={() => {
this.moveToAddNewCustomer()}
}}
>
<Image
style={styles.newImage}
// resizeMode="contain"
source={require("~/assets/images/test123.png")}
/>
</TouchableWithoutFeedback>
televisión novata
si
TouchableHighlight onPress={() => this.moveToAddNewCustomer()}>
<Image style={styles.imagestyle} source={require('./ic_action_name.png')} />
</TouchableHighlight>
no funcionó o incluso envolvió la imagen con la vista, entonces le recomiendo que busque en su
style={styles.imagestyle}
tratar de usar zIndex: 10
existe una pequeña posibilidad de que su imagen haya sido superpuesta por algo, pero no pierde la imagen.
-
Como está escrito actualmente, su respuesta no está clara. Edite para agregar detalles adicionales que ayudarán a otros a comprender cómo esto aborda la pregunta formulada. Puede encontrar más información sobre cómo escribir buenas respuestas en el centro de ayuda.
– Comunidad
Bot1 de marzo a las 12:34
-
Como está escrito actualmente, su respuesta no está clara. Edite para agregar detalles adicionales que ayudarán a otros a comprender cómo esto aborda la pregunta formulada. Puede encontrar más información sobre cómo escribir buenas respuestas en el centro de ayuda.
– Comunidad
Bot1 de marzo a las 12:34