¿Puede alguien decirme cómo enmascarar la subcadena en EditText
o cómo cambiar EditText
la entrada subcadena que introduzca la contraseña o sustituir por otro personaje como éste 123xxxxxxxxx3455
String contents = et1.getText().toString();
et1.setText(contents.replace.substring(0, contents.length()-2),"*");
Por favor, dígame cómo puedo usar el TextWatcher
método en Android.
android
android-edittext
textwatcher
desarrollador de Android
fuente
fuente
La
TextWatcher
interfaz tiene 3 métodos de devolución de llamada que se llaman en el siguiente orden cuando se produce un cambio en el texto:beforeTextChanged(CharSequence s, int start, int count, int after)
Se llama antes de que los cambios se hayan aplicado al texto.
El
s
parámetro es el texto antes de que se aplique cualquier cambio.El
start
parámetro es la posición del comienzo de la parte modificada en el texto.El
count
parámetro es la longitud de la parte cambiada en las
secuencia desde lastart
posición.Y el
after
parámetro es la longitud de la nueva secuencia que reemplazará la parte de las
secuencia destart
astart+count
.No debe cambiar el texto en el
TextView
de este método (usandomyTextView.setText(String newText)
).onTextChanged(CharSequence s, int start, int before, int count)
Similar al
beforeTextChanged
método pero llamado después de que cambia el texto.El
s
parámetro es el texto después de que se hayan aplicado los cambios.El
start
parámetro es el mismo que en elbeforeTextChanged
método.El
count
parámetro es elafter
parámetro del método beforeTextChanged.Y el
before
parámetro es elcount
parámetro en el método beforeTextChanged.No debe cambiar el texto en el
TextView
de este método (usandomyTextView.setText(String newText)
).afterTextChanged(Editable s)
Puede cambiar el texto
TextView
de este método./! \ Advertencia: Cuando cambie el texto en
TextView
, elTextWatcher
se activará nuevamente, iniciando un ciclo infinito. Luego debe agregar unaboolean _ignore
propiedad similar que evite el bucle infinito.Ejemplo:
Resumen:
Una clase lista para usar:
TextViewListener
Personalmente, hice mi oyente de texto personalizado, que me da las 4 partes en cadenas separadas, lo cual es, para mí, mucho más intuitivo de usar.
Ejemplo:
fuente
Respuesta suplementaria
Aquí hay un complemento visual de las otras respuestas. Mi respuesta más completa con el código y las explicaciones está aquí .
fuente
Usando TextWatcher en Android
Aquí hay un código de muestra. Intente usar el
addTextChangedListener
método de TextViewfuente
Una perspectiva un poco más amplia de la solución:
Esto funciona para mí, lo hago por primera vez.
fuente
Cree una subclase personalizada de TextWatcher:
Establecer oyente para su EditText:
fuente
Para Kotlin use la función de extensión KTX : (Se usa
TextWatcher
como respuestas anteriores)importar
core-KTX
:fuente
fuente
si implementa con el diálogo edittext. utilizar así :. es lo mismo con el uso de otro texto de edición.
fuente
Para obtener más referencias, haga clic aquí http://androiddhina.blogspot.in/2015/05/android-textwatcher.html
fuente