¿Alguien sabe cómo deshabilitar el cursor parpadeante en una EditText
vista?
android
android-edittext
Kevin Parker
fuente
fuente
Solución perfecta que va más allá de la meta.
Objetivo: deshabilitar el cursor parpadeante cuando
EditText
no está enfocado, y habilitar el cursor parpadeante cuandoEditText
está enfocado. A continuación también se abre el teclado cuandoEditText
se hace clic y lo oculta cuando presiona Listo en el teclado.1) Establezca en su xml debajo de su
EditText
:2) Establecer onClickListener:
3) A continuación
onCreate
, capturar el evento cuando se hace que se pulsa el usoOnEditorActionListener
a tuEditText
, y luegosetCursorVisible(false)
.fuente
Puede usar el siguiente código para habilitar y deshabilitar la edición del cursor de texto mediante programación.
fuente
El problema con la configuración de la visibilidad del cursor en verdadero y falso puede ser un problema ya que elimina el cursor hasta que lo vuelva a configurar y al mismo tiempo el campo sea editable, lo que no es una buena experiencia para el usuario.
así que en lugar de usar
solo hazlo así
El código anterior elimina el foco que a su vez elimina el cursor. Y lo habilita nuevamente para que pueda tocarlo nuevamente y poder editarlo. Al igual que la experiencia de usuario normal.
fuente
En mi caso, quería habilitar / deshabilitar el cursor cuando la edición está enfocada.
En tu actividad:
fuente
edit.setCursorVisible(!isKeyboardOpen);
estaredit.setCursorVisible(isKeyboardOpen);
para que el cursor sea visible cuando el teclado esté presente.simplemente agregue esta línea en su diseño principal
fuente
Si quieres ignorarlo
Edittext
desde el inicio de la actividad,android:focusable
yandroid:focusableInTouchMode
te ayudará inshallah.fuente
Cambie el foco a otra vista (por ejemplo, cualquier vista de texto o Linearlayout en el XML) usando
configura addTextChangedListener para editar el texto en Activity.
y luego en el texto posterior cambiado de Edittext put
edittext.clearFocus()
;Esto habilitará el cursor cuando el teclado esté abierto y deshabilitará cuando el teclado esté cerrado.
fuente
En kotlin your_edittext.isCursorVisible = false
fuente
rootLayout.findFocus (). clearFocus ();
fuente