[Text on Android]: setting selectable to true breaks the text truncation and lineHeight on Android
Personne n'a encore pris cette issue.
- Langage dominant
- C++
- Étoiles
- 127k
- Forks
- 25.3k
- Merge moyen
- 1 j 23 h
- PR mergées (30 j)
- 4
Description
Description
I use Text component that has to contain selectable text and should be truncated if it extends the width of the parent component.
On iOS everything works fine. On Android if I set selectable={true} truncation and line height of the text are breaking.
Steps to reproduce
- import Text component from react-native
- render Text component, add
selectable={true},numberOfLines={1} - the text is cut off instead of being truncated, the line height is bigger than it should be, the top of the second line of text is visible
React Native Version
0.75.4
Affected Platforms
Runtime - Android
Output of npx react-native info
-
Stacktrace or Logs
-
Reproducer
https://github.com/dariakoko/text-component-on-android
Screenshots and Videos
<View style={{width: 200}}>
<Text style={{color: 'green'}}>default: </Text>
<Text style={{backgroundColor: 'yellow'}}>
Some long very very very very very long text
</Text>
<Text>-------------</Text>
<Text style={{color: 'green'}}>not selectable: </Text>
<Text numberOfLines={1} style={{backgroundColor: 'yellow'}}>
Some long very very very very very long text
</Text>
<Text>-------------</Text>
<Text style={{color: 'red'}}>selectable (issue): </Text>
<Text
selectable={true}
numberOfLines={1}
style={{backgroundColor: 'yellow'}}>
Some long very very very very very long text
</Text>
<View style={{height: 20, backgroundColor: 'pink'}}></View>
</View>
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le reproducer associé à https://github.com/dariakoko/text-component-on-android et examinez le comportement du composant Text de React Native sur Android avec selectable={true} et numberOfLines={1}. Comparez-le aux cas non sélectionnables et iOS ; la tâche est terminée lorsque le texte sélectionnable est correctement tronqué et conserve la hauteur de ligne attendue sur Android.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- android, react-native
- Domaine
- mobile-dev
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100