Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

241
Visualizações
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 Respostas
Responde à pergunta

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda