Je travaille sur une application Android dans laquelle je voudrais comparer certaines valeurs de chaînes en EditText
.Le caractère " u200B" est automatiquement ajouté à l'EditText
Par exemple, dans un premier EditText
, je commence à entrer "dav", puis sélectionnez "David" à partir des suggestions du clavier. Dans un deuxième EditText
, je commence à entrer "dav", puis sélectionnez "David" à partir des suggestions du clavier, puis corriger le contenu à "Dav".
Tout semble être OK. Si je récupère le contenu du EditText
(avec getEditableText().toString().trim()
) le débogueur me dit que "David" est un mot composé de 5 caractères et "Dav" un mot composé de 3 caractères.
Si maintenant je clique sur le EditText
qui contient "Dav" et je sélectionne "David" à partir des suggestions du clavier, le débogueur me dit que le mot "David" est composé de 6 caractères. Le dernier caractère est "\ u200B".
Pourquoi ce caractère est automatiquement ajouté et comment puis-je le supprimer de manière générique?
Nous vous remercions de votre aide.
est-il arrive tout le temps ou en cas de sélection de suggestions? si suggestions seulement alors il ajoutera de l'espace par défaut vous pouvez utiliser trim() au moment d'obtenir la valeur – Pavan
@Pavan: Il apparaît chaque fois que je sélectionne une suggestion d'un EditText pas vide. Lorsque je sélectionne une suggestion d'un EditText vide, je n'ai pas le problème. J'utilise déjà la méthode 'trim()' après celle de 'toString()'. – rolandl
comme les suggestions peuvent contenir de l'espace supplémentaire causant cela, est-ce que trim() fonctionne ou vous faites face à un autre problème? – Pavan