Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

239
Vistas
Flexbox - Reaccionar nativo

soy nuevo en reaccionar nativo y estoy tratando de hacer un diseño de aplicación de chat. ingrese la descripción de la imagen aquí

Como puede ver en la captura de pantalla que he adjuntado, quiero que el cuadro de texto ocupe tanto espacio como el texto que contiene. Por ejemplo, si envío 'Hola', solo debe extenderse tanto espacio como necesite 'Hola'. Si envío un texto largo, entonces debería estirarse y ocupar tanto espacio como ese texto. Como sucede en casi todas las aplicaciones de mensajes de texto.

El código del cuadro de texto es:

 <TouchableOpacity> <View style={styles.containerSent}> <View style={{flex: 3}}> <Text style={styles.message}>{item.message}</Text> </View> <View style={{flex: 1}}> <Image source={require('../assets/images/check.png')} style={styles.image} /> <Text style={{textAlign: 'right', color: 'white'}}> {msToTime(item.timestamp)} </Text> </View> </View> </TouchableOpacity>

hoja de estilo

 containerSent: { flex: 1, maxWidth: '70%', // minWidth: '30%', marginTop: 20, paddingTop: 20, paddingHorizontal: 10, paddingBottom: 10, borderWidth: 1, backgroundColor: '#6F2232', borderRadius: 20, alignSelf: 'flex-end', flexDirection: 'row', justifyContent: 'space-between', // justifyContent: 'flex-end', }, message: { color: 'white', fontSize: 15, fontWeight: 'bold', textAlign: 'left', alignSelf: 'stretch', }, image: { width: 15, height: 15, marginLeft: 20, marginBottom: 5, alignSelf: 'flex-end', },
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Establezca el estilo de vista en flex: 0 para que solo se tome como espacio Maus h según sea necesario.

 <TouchableOpacity> <View style={styles.containerSent}> <View style={{ flex: 0 }}> <Text style={styles.message}>{'q.a'}</Text> </View> <View style={{ flex: 0, paddingLeft: 10 }}> <Text style={styles.message}>{'eeeee.message'}</Text> </View> </View> </TouchableOpacity>

Echa un vistazo a mi muestra

about 4 years ago · Juan Pablo Isaza Denunciar

0

La forma en que implementé esto es que eliminé flex: 3 y flex: 1 de ambos elementos para que no se expandan para ocupar el espacio máximo, y agregué flexShrink: 1 al texto, para que siempre se encoja manteniendo el elemento derecho intacto.

Enlace de bocadillos

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda