react / react/react-native

🐛 Android: Cursor jumps to right when clearing centered TextInput

Ouverte
#55,457 5 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Component: TextInput Needs: Attention Needs: Repro Platform: Android
Langage dominant
C++
Étoiles
127k
Forks
25.3k
Merge moyen
1 j 23 h
PR mergées (30 j)
4

Description

Description

When using a TextInput with textAlign: "center" on Android, clearing the input causes the cursor to move to the right end of the input instead of staying centered.

This does not happen on iOS — iOS behaves correctly.

This issue makes centered numeric or OTP-style inputs feel broken on Android.

Steps to reproduce

1)Render a TextInput with textAlign: "center"
2)Type any value
3)Clear the value (backspace or programmatically)
4)Observe cursor position

`import React, { useState } from "react";
import { View, TextInput, StyleSheet } from "react-native";

export default function App() {
const [value, setValue] = useState("");

return (



);
}

const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: "center",
padding: 20,
},
input: {
borderWidth: 1,
height: 48,
fontSize: 18,
textAlign: "center",
},
});
`

React Native Version

0.83.0

Affected Platforms

Runtime - Android

Output of npx @react-native-community/cli info
N/A
Stacktrace or Logs
N/A
MANDATORY Reproducer

https://reactnative.dev/docs/textinput

Screenshots and Videos

https://github.com/user-attachments/assets/20586de1-a4fc-40d5-8495-2d6cc29ace5f

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par le reproducteur TextInput obligatoire dans la documentation de React Native et reproduisez le comportement sur Android avec textAlign défini sur center. Suivez le comportement Android de TextInput impliqué lors de l’effacement du texte d’une entrée contrôlée. C’est terminé lorsque le curseur reste centré après un effacement avec la touche de retour arrière ou par programmation, sans modifier le comportement correct d’iOS.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
react-native
Domaine
mobile
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
58/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.