Tengo un problema desde hace varios días, tengo una lista de elementos (una lista de encabezados) y quiero poder tomar medidas sobre estos elementos (actualizar/eliminar).
Creé un componente de elemento, con un botón de actualización y eliminación.
El componente Button es un componente de los elementos nativos de reacción, lo uso en todas partes de mi aplicación y hasta ahora no he tenido ningún problema.
TemaItem.tsx
<Container> <List onPress={() => onSelectTheme(theme.id)}> <ListItem.Content> <View style={{display: 'flex', flexDirection: 'row', marginBottom: 5}}> <ListItem.Title style={{fontSize: 18, fontWeight: 'bold'}}> {theme.name} </ListItem.Title> {isActive && ( <Icon name={'check-circle'} color={'green'} style={{marginLeft: 5}} size={20} /> )} </View> </ListItem.Content> </List> <ThemeItemIconsStyle> <> {theme.id > 1 && !isActive && ( <Button onPress={() => onDelete(theme.id)} icon={{ name: 'trash', type: 'font-awesome-5', size: 25, color: 'white', }} /> )} <Button onPress={() => onUpdate(theme)} icon={{ name: 'pen', type: 'font-awesome-5', size: 25, color: 'white', }} /> </> </ThemeItemIconsStyle> </Container>TemaElementoIconoEstilo
const ThemeItemIconsStyle = styled.View` display: flex; flex-direction: row; justify-content: space-around; align-items: center; padding: 15px 20px; background-color: white; width: 40%; height: 100%; `;Envase
const Container = styled.View` display: flex; flex-direction: row; justify-content: flex-start; align-items: center; background-color: white; `;En el emulador, el comportamiento es el esperado, pero cuando instalo el apk en mi teléfono, no sucede en absoluto.
No entiendo absolutamente por qué mi código funciona en un emulador y no en un teléfono real. Supongo que si en el emulador no hay problema, el problema no viene del código.
Gracias de antemano por la ayuda
Pero, ¿cuál es el tipo de botón? Botón, TouchableOpacity, TouchableOpacityWithoutFeedback...
Además, recomendaría cambiar sus botones a RectButton desde react-native-gesture-handler, solo para usar botones nativos en su aplicación;)