Detectar pulsación de la tecla Action Done del Teclado – Android Kotlin


Al declarar en un EditText la acción de Finalizar Acción, con el imeiOptions=»actionDone» y queremos detectar que se ha pulsado esa tecla.

Declaración del EditText

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:imeOptions="actionDone"
    android:inputType="text" />

Detectar tecla Action Done

editText1.setOnEditorActionListener { _, actionId, _ ->
    if (actionId == EditorInfo.IME_ACTION_DONE) {
        //@Todo Se ha pulsado la tecla ACTION_DONE
    }
    false
}

Extensión Kotlin EditText.done

fun EditText.onDone(callback: () -> Unit) {
    setOnEditorActionListener { _, actionId, _ ->
        if (actionId == EditorInfo.IME_ACTION_DONE) {
            callback.invoke()
            true
        }
        false
    }
}

//Su uso
editText1.onDone { @Todo se ha pulsado la tecla ACTION_DONE }

Recursos

Anuncio publicitario

Publicado por Codelaby

Mobile DevDesigner

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: