Le montage en direct de l'utilisateur d'entrer des
Est-il possible d'auto insérer des caractères dans un EditText
que les entrées de l'utilisateur des données?
I. e. si l'utilisateur d'entrer un nombre assez long comme 123456789012
, est-il possible de ce numéro de semblent comme il est de taper dans la zone de texte modifier, mais avec un tableau de bord chaque 4e caractère?
De sorte que vous tapez le numéro ci-dessus, vous verriez qu'il soit entré dans le EditText
boîte, mais devrait ressembler à ceci: 1234-5678-9012.
Actuellement, j'ai une application dans laquelle vous pouvez entrer un numéro de long et appuyez sur un bouton et il insère les tirets pour vous, mais je suis curieux de savoir si il pourrait être fait pendant que vous tapez?
Merci beaucoup pour toute aide.
En ce que la technologie? E. g. dans une page web, une application iPhone, etc.
OriginalL'auteur Entropy1024 | 2010-11-13
Vous devez vous connecter pour publier un commentaire.
Par le marquage android, je pense que vous sont en train de discuter à propos de android editText, est de sorte que vous pouvez le faire en écoutant la TextChangedListener,
ÉDITÉ: pour retour arrière
Faire gérer suppressions bien l'exemple donné, il peut être impossible pour revenir en arrière après la saisie de 4 caractères (en supprimant le tableau de bord sera immédiatement ajouter un autre).
J'ai édité pour revenir en arrière , Donc ce n'est pas impossible
j'ai essayé de l'utiliser. mais si j'appuie sur l'arrière de l'espace . - l'habitude de supprimer également. aussi une fois un tableau de bord aperçu dans l'edittext le cursur sera déplacé à l'avant
C'est également confronté à un problème lorsque vous supprimez "-" et une fois de plus, entereing textes...
OriginalL'auteur Labeeb Panampullan
pour résoudre ce problème, j'écris une classe "AutoAddTextWatcher" :
1. Insertion automatique de texte dans l'EditText.
2. insérer du texte dans EditText à des postes vous sont programmés.
3. supprimer du texte dans EditText à des postes vous sont programmés, lorsque la longueur du texte plus grand que 1.
extrait de code :
AutoAddTextWatcher classe
démo complète de la source :
https://github.com/henrychuangtw/AutoInsertEditText
android:inputType="phone"
j'ai essayé d'abord avecandroid:inputType="number"
et ça ne fonctionne pas. J'ai vérifié votre page github et vu que vous avez utiliséphone
, et qui travaille maintenant. Excellent travail!Voici mon oeuvre:
enterUserID.addTextChangedListener(new AutoAddTextWatcher(enterUserID, "-", 2, 5));
Merci de vos encouragements et de la suggestion, je vais essayer.
Non, merci! Je ne peux pas croire comment dur c'est de le faire correctement sous Android!
votre code a été super. auparavant, j'ai mis en place ma propre voie, en luttant beaucoup. Mais votre code d'aider les gens certainement. Si je veux mettre en œuvre des copier coller de l'écouteur de votre code, comment pouvons-nous y parvenir.
OriginalL'auteur HenryChuang
Ce sera de faire aussi bien, seulement ce code va insérer
" - "
après le 3e personnage.OriginalL'auteur zurab Kumsiashvili
C'est ce que j'ai utilisé
Ici vous remplacez le séparateur avec ce que vous voulez pour séparer les chiffres.
OriginalL'auteur Yaroslav
Pour ceux qui sont encore confrontés à des ennuis avec la touche retour arrière et plusieurs traits d'union -
OriginalL'auteur Taranmeet Singh