Quelqu'un peut -il me dire comment masquer le sous - chaîne dans EditText
ou comment changer d' EditText
entrée substring type de mot de passe ou remplacer par un autre caractère comme celui - ci 123xxxxxxxxx3455
String contents = et1.getText().toString();
et1.setText(contents.replace.substring(0, contents.length()-2),"*");
S'il vous plaît, dites-moi comment je peux utiliser la TextWatcher
méthode sous Android.
android
android-edittext
textwatcher
Développeur Android
la source
la source
L'
TextWatcher
interface dispose de 3 méthodes de rappel qui sont toutes appelées dans l'ordre suivant lorsqu'une modification est apportée au texte:beforeTextChanged(CharSequence s, int start, int count, int after)
Appelé avant que les modifications aient été appliquées au texte.
Le
s
paramètre est le texte avant toute modification.Le
start
paramètre est la position du début de la partie modifiée dans le texte.Le
count
paramètre est la longueur de la pièce modifiée dans las
séquence depuis lastart
position.Et le
after
paramètre est la longueur de la nouvelle séquence qui remplacera la partie de las
séquence destart
àstart+count
.Vous ne devez pas modifier le texte
TextView
de cette méthode (en utilisantmyTextView.setText(String newText)
).onTextChanged(CharSequence s, int start, int before, int count)
Similaire à la
beforeTextChanged
méthode mais appelée après la modification du texte.Le
s
paramètre est le texte une fois les modifications appliquées.Le
start
paramètre est le même que dans labeforeTextChanged
méthode.Le
count
paramètre est leafter
paramètre de la méthode beforeTextChanged.Et le
before
paramètre est lecount
paramètre de la méthode beforeTextChanged.Vous ne devez pas modifier le texte
TextView
de cette méthode (en utilisantmyTextView.setText(String newText)
).afterTextChanged(Editable s)
Vous pouvez modifier le texte dans le à
TextView
partir de cette méthode./! \ Attention: Lorsque vous modifiez le texte dans
TextView
, leTextWatcher
sera de nouveau déclenché, commençant une boucle infinie. Vous devez alors ajouter comme uneboolean _ignore
propriété qui empêche la boucle infinie.Exemple:
Résumé:
Une classe prête à l'emploi:
TextViewListener
Personnellement, j'ai fait mon écouteur de texte personnalisé, ce qui me donne les 4 parties dans des chaînes séparées, ce qui est, pour moi, beaucoup plus intuitif à utiliser.
Exemple:
la source
Réponse supplémentaire
Voici un complément visuel aux autres réponses. Ma réponse plus complète avec le code et les explications est ici .
la source
Utilisation de TextWatcher sous Android
Voici un exemple de code. Essayez d'utiliser la
addTextChangedListener
méthode de TextViewla source
Une perspective un peu plus large de la solution:
Cela fonctionne pour moi, je le fais ma première fois.
la source
Créez une sous-classe TextWatcher personnalisée:
Définissez l'écouteur pour votre EditText:
la source
Pour Kotlin, utilisez la fonction d' extension KTX : (Il utilise
TextWatcher
comme réponses précédentes)importer
core-KTX
:la source
la source
si vous implémentez avec le dialogue edittext. utiliser comme ceci:. sa même utilisation à d'autres edittext.
la source
Pour plus d'informations, cliquez ici http://androiddhina.blogspot.in/2015/05/android-textwatcher.html
la source