KeyEvent Clase

Definición

Objeto usado para notificar eventos de tecla y botón.

[Android.Runtime.Register("android/view/KeyEvent", DoNotGenerateAcw=true)]
public class KeyEvent : Android.Views.InputEvent, IDisposable
[<Android.Runtime.Register("android/view/KeyEvent", DoNotGenerateAcw=true)>]
type KeyEvent = class
    inherit InputEvent
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herencia
Atributos
Implementaciones

Comentarios

Objeto usado para notificar eventos de tecla y botón.

Cada pulsación de teclas se describe mediante una secuencia de eventos clave. Una pulsación de tecla comienza con un evento de tecla con #ACTION_DOWN. Si la clave se mantiene lo suficientemente larga como para que se repita, la reducción inicial se sigue a eventos de clave adicionales con #ACTION_DOWN y un valor distinto de cero para #getRepeatCount(). El último evento de clave es para #ACTION_UP la clave arriba. Si se cancela la pulsación de tecla, el evento key up tendrá la #FLAG_CANCELED marca establecida.

Los eventos clave suelen ir acompañados de un código de clave (#getKeyCode()), un código de examen (#getScanCode()) y un meta estado (#getMetaState()). Las constantes de código clave se definen en esta clase. Las constantes de código de examen son códigos específicos del dispositivo sin procesar obtenidos del sistema operativo y, por lo tanto, no suelen ser significativos para las aplicaciones a menos que se interpreten mediante .KeyCharacterMap Los metadatos describen el estado presionado de los modificadores de tecla, como #META_SHIFT_ON o #META_ALT_ON.

Los códigos de clave normalmente corresponden uno a uno con claves individuales en un dispositivo de entrada. Muchas teclas y combinaciones de teclas sirven funciones bastante diferentes en diferentes dispositivos de entrada, por lo que se debe tener cuidado al interpretarlas. Use siempre el KeyCharacterMap asociado al dispositivo de entrada al asignar claves a caracteres. Tenga en cuenta que puede haber varios dispositivos de entrada de clave activos al mismo tiempo y cada uno tendrá su propio mapa de caracteres de clave.

Como los métodos de entrada suaves pueden usar varias formas inventivas de escribir texto, no hay ninguna garantía de que ninguna pulsación de tecla en un teclado suave genere un evento de tecla: esto queda a discreción del IME y, de hecho, no se recomienda enviar estos eventos. Nunca debe confiar en recibir KeyEvents para cualquier clave en un método de entrada temporal. En concreto, el teclado de software predeterminado nunca enviará ningún evento de tecla a cualquier aplicación que tenga como destino Jelly Bean o posterior, y solo enviará eventos para algunas presiones de la eliminación y devolver teclas a las aplicaciones que tienen como destino Ice Cream Sandwich o versiones anteriores. Tenga en cuenta que otros métodos de entrada de software nunca pueden enviar eventos clave independientemente de la versión. Considere la posibilidad de usar acciones del editor como android.view.inputmethod.EditorInfo#IME_ACTION_DONE si necesita interacción específica con el teclado de software, ya que proporciona más visibilidad al usuario sobre cómo la aplicación reaccionará a las pulsaciones de teclas.

Al interactuar con un IME, el marco puede entregar eventos clave con la acción #ACTION_MULTIPLE especial que especifica ese código de clave repetido único o una secuencia de caracteres que se van a insertar.

En general, el marco no puede garantizar que los eventos clave que entrega a una vista siempre constituyen secuencias clave completas, ya que algunos eventos pueden quitarse o modificarse con vistas antes de que se entreguen. La implementación de la vista debe estar preparada para controlar #FLAG_CANCELED y tolerar situaciones anómalas, como recibir un nuevo #ACTION_DOWN sin haber recibido primero una #ACTION_UP para la tecla anterior.

Consulte para InputDevice obtener más información sobre cómo diferentes tipos de dispositivos de entrada y orígenes representan teclas y botones.

Java documentación para android.view.KeyEvent.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Constructores

Nombre Description
KeyEvent(Int64, Int64, KeyEventActions, Keycode, Int32, MetaKeyStates, Int32, Int32, KeyEventFlags, InputSourceType)

Cree un nuevo evento de clave.

KeyEvent(Int64, Int64, KeyEventActions, Keycode, Int32, MetaKeyStates, Int32, Int32, KeyEventFlags)

Cree un nuevo evento de clave.

KeyEvent(Int64, Int64, KeyEventActions, Keycode, Int32, MetaKeyStates, Int32, Int32)

Cree un nuevo evento de clave.

KeyEvent(Int64, Int64, KeyEventActions, Keycode, Int32, MetaKeyStates)

Cree un nuevo evento de clave.

KeyEvent(Int64, Int64, KeyEventActions, Keycode, Int32)

Cree un nuevo evento de clave.

KeyEvent(Int64, String, Int32, KeyEventFlags)

Cree un nuevo evento de clave para una cadena de caracteres.

KeyEvent(IntPtr, JniHandleOwnership)

Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución.

KeyEvent(KeyEvent, Int64, Int32)
Obsoletos.

Copie un evento de clave existente, modificando su tiempo y recuento de repeticiones.

KeyEvent(KeyEvent)

Realice una copia exacta de un evento de clave existente.

KeyEvent(KeyEventActions, Keycode)

Cree un nuevo evento de clave.

Campos

Nombre Description
KeycodeClose
Obsoletos.

Constante de código de clave: AC Close.

KeycodeDemoApp1
Obsoletos.

Constante de código de clave: clave de aplicación de demostración n.º 1.

KeycodeDemoApp2
Obsoletos.

Constante de código de clave: clave de aplicación de demostración n.º 2.

KeycodeDemoApp3
Obsoletos.

Constante de código de clave: clave de aplicación de demostración n.º 3.

KeycodeDemoApp4
Obsoletos.

Constante de código de clave: clave de aplicación de demostración n.º 4.

KeycodeDictate
Obsoletos.

Constante de código de clave: para iniciar el dictado de un campo de entrada

KeycodeDoNotDisturb
Obsoletos.

Constante de código clave: para alternar el modo "No molestar".

KeycodeEmojiPicker
Obsoletos.

Constante de código de clave: para abrir el selector de emojis.

KeycodeF13
Obsoletos.

Constante de código de clave: tecla F13.

KeycodeF14
Obsoletos.

Constante de código de clave: tecla F14.

KeycodeF15
Obsoletos.

Constante de código de clave: tecla F15.

KeycodeF16
Obsoletos.

Constante de código de clave: tecla F16.

KeycodeF17
Obsoletos.

Constante de código de clave: tecla F17.

KeycodeF18
Obsoletos.

Constante de código de clave: tecla F18.

KeycodeF19
Obsoletos.

Constante de código de clave: tecla F19.

KeycodeF20
Obsoletos.

Constante de código de clave: tecla F20.

KeycodeF21
Obsoletos.

Constante de código de clave: tecla F21.

KeycodeF22
Obsoletos.

Constante de código de clave: tecla F22.

KeycodeF23
Obsoletos.

Constante de código de clave: tecla F23.

KeycodeF24
Obsoletos.

Constante de código de clave: tecla F24.

KeycodeFeaturedApp1
Obsoletos.

Constante de código de clave: clave de aplicación destacada n.º 1.

KeycodeFeaturedApp2
Obsoletos.

Constante de código de clave: clave de aplicación destacada n.º 2.

KeycodeFeaturedApp3
Obsoletos.

Constante de código de clave: clave de aplicación destacada n.º 3.

KeycodeFeaturedApp4
Obsoletos.

Constante de código de clave: clave de aplicación destacada n.º 4.

KeycodeFullscreen
Obsoletos.

Constante de código clave: para alternar el modo de pantalla completa (en la aplicación actual).

KeycodeKeyboardBacklightDown
Obsoletos.

Constante de código de tecla: retroiluminación del teclado.

KeycodeKeyboardBacklightToggle
Obsoletos.

Constante de código de tecla: alternancia de retroiluminación del teclado.

KeycodeKeyboardBacklightUp
Obsoletos.

Constante de código de tecla: retroiluminación del teclado.

KeycodeLock
Obsoletos.

Constante de código de clave: para bloquear la pantalla.

KeycodeMacro1
Obsoletos.

Constante de código de clave: un botón cuyo uso puede personalizar el usuario a través del sistema.

KeycodeMacro2
Obsoletos.

Constante de código de clave: un botón cuyo uso puede personalizar el usuario a través del sistema.

KeycodeMacro3
Obsoletos.

Constante de código de clave: un botón cuyo uso puede personalizar el usuario a través del sistema.

KeycodeMacro4
Obsoletos.

Constante de código de clave: un botón cuyo uso puede personalizar el usuario a través del sistema.

KeycodeNew
Obsoletos.

Constante de código de clave: AC New.

KeycodePrint
Obsoletos.

Constante de código de clave: para imprimir.

KeycodeRecentApps
Obsoletos.

Constante de código clave: para abrir la vista de aplicaciones recientes (a.

KeycodeScreenshot
Obsoletos.

Constante de código de clave: para tomar una captura de pantalla

        This key is fully handled by the framework and will not be sent to the foreground app,
        unlike <code data-dev-comment-type="c">KEYCODE_SYSRQ</code> which is sent to the app first and only if the app
        doesn't handle it, the framework handles it (to take a screenshot).
KeycodeStylusButtonPrimary
Obsoletos.

Constante de código clave: el botón principal del barril de un lápiz óptico.

KeycodeStylusButtonSecondary
Obsoletos.

Constante de código clave: el botón secundario del barril de un lápiz óptico.

KeycodeStylusButtonTail
Obsoletos.

Constante de código clave: un botón en el extremo final de un lápiz óptico.

KeycodeStylusButtonTertiary
Obsoletos.

Constante de código clave: botón terciario en el barril de un lápiz óptico.

KeycodeVideoApp1
Obsoletos.

Constante de código de clave: clave de aplicación de vídeo n.º 1.

KeycodeVideoApp2
Obsoletos.

Constante de código de clave: clave de aplicación de vídeo n.º 2.

KeycodeVideoApp3
Obsoletos.

Constante de código de clave: clave de aplicación de vídeo n.º 3.

KeycodeVideoApp4
Obsoletos.

Constante de código de clave: clave de aplicación de vídeo n.º 4.

KeycodeVideoApp5
Obsoletos.

Constante de código de clave: clave de aplicación de vídeo n.º 5.

KeycodeVideoApp6
Obsoletos.

Constante de código de clave: clave de aplicación de vídeo n.º 6.

KeycodeVideoApp7
Obsoletos.

Constante de código de clave: clave de aplicación de vídeo n.º 7.

KeycodeVideoApp8
Obsoletos.

Constante de código de clave: clave de aplicación de vídeo n.º 8.

MaxKeycode
Obsoletos.

Especifica el código de clave más grande definido por este nivel de API.

Propiedades

Nombre Description
Action

Recupere la acción de este evento de clave.

Characters

Para el caso especial de un #ACTION_MULTIPLE evento con código clave de #KEYCODE_UNKNOWN, se trata de una cadena sin formato de caracteres asociados al evento.

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
Creator

Obtiene el creador parcelable para las instancias de KeyEvent.

Device

Obtiene el dispositivo del que procede este evento.

(Heredado de InputEvent)
DeviceId

Obtiene el identificador del dispositivo del que procede este evento. Un identificador de cero indica que el evento no procede de un dispositivo físico y se asigna al mapa de claves predeterminado. Los otros números son arbitrarios y no debe depender de los valores.

DisplayLabel

Obtiene el carácter principal de esta clave. En otras palabras, la etiqueta que se imprime físicamente en ella.

DownTime

Recupere la hora del evento de reducción de clave más reciente, en la android.os.SystemClock#uptimeMillis base de tiempo.

EventTime

Recupere la hora en que se produjo este evento, en la android.os.SystemClock#uptimeMillis base de tiempo.

Flags

Devuelve las marcas de este evento de clave.

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
HasNoModifiers

Devuelve true si no se presiona ninguna tecla modificadora.

IsAltPressed

Devuelve el estado presionado de la tecla meta ALT.

IsCanceled

En #ACTION_UP el caso de los eventos, indica que el evento se ha cancelado según #FLAG_CANCELED.

IsCapsLockOn

Devuelve el estado bloqueado de la metaclave CAPS LOCK.

IsCtrlPressed

Devuelve el estado presionado de la tecla meta CTRL.

IsFunctionPressed

Devuelve el estado presionado de la metaclave FUNCTION.

IsLongPress

En #ACTION_DOWN el caso de los eventos, indica que el evento se ha cancelado según #FLAG_LONG_PRESS.

IsMetaPressed

Devuelve el estado presionado de la metaclave META.

IsNumLockOn

Devuelve el estado bloqueado de la metaclave NUM LOCK.

IsPrintingKey

Devuelve true si esta clave genera un glifo.

IsScrollLockOn

Devuelve el estado bloqueado de la metaclave SCROLL LOCK.

IsShiftPressed

Devuelve el estado presionado de la tecla meta MAYÚS.

IsSymPressed

Devuelve el estado presionado de la metaclave SYM.

IsSystem

¿Es una clave del sistema? Las teclas del sistema no se pueden usar para los métodos abreviados de menú.

IsTracking

En #ACTION_UP el caso de los eventos, indica que el evento todavía se está realizando un seguimiento desde su evento inicial hacia abajo según #FLAG_TRACKING.

JniIdentityHashCode

Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad.

(Heredado de Object)
JniManagedPeerState

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
JniPeerMembers

Obtiene los metadatos del mismo nivel de JNI usados por el .NET para el entorno de ejecución de enlace de Android.

KeyCharacterMap

Obtiene el objeto KeyCharacterMap asociado al dispositivo de teclado.

KeyCode

Recupere el código de clave del evento de clave.

MaxKeyCode

Devuelve el código de clave máximo.

MetaState

Devuelve el estado de las metaclaves.

ModifierMetaStateMask

Obtiene una máscara que incluye todos los bits de meta estado de clave modificador válidos.

Modifiers

Devuelve el estado de las claves modificadoras.

Number

Obtiene el número o símbolo asociado a la clave. Se devuelve el valor de carácter, no el valor numérico. Si la clave no es un número, pero es un símbolo, el símbolo se vuelve a ajustar.

PeerReference

Obtiene la referencia de objeto JNI para este Java del mismo nivel.

(Heredado de Object)
RepeatCount

Recupere el recuento de repeticiones del evento.

ScanCode

Recupere el identificador de clave de hardware de este evento de clave.

Source

Obtiene el origen del evento.

ThresholdClass

Obtiene el identificador de clase JNI usado por el .NET para el entorno de ejecución de enlace de Android.

ThresholdType

Obtiene el tipo administrado usado por el .NET para el entorno de ejecución de enlace de Android.

UnicodeChar

Obtiene el carácter Unicode generado por la combinación de estado de clave y metaclave especificada.

Métodos

Nombre Description
ChangeAction(KeyEvent, KeyEventActions)

Cree un nuevo evento de clave que sea el mismo que el especificado, pero cuya acción se reemplaza por el valor especificado.

ChangeFlags(KeyEvent, KeyEventFlags)

Cree un nuevo evento de clave que sea el mismo que el especificado, pero cuyas marcas se reemplazan por el valor especificado.

ChangeTimeRepeat(KeyEvent, Int64, Int32, KeyEventFlags)

Cree un nuevo evento de clave que sea el mismo que el especificado, pero cuyo tiempo de evento y recuento de repeticiones se reemplazan por el valor especificado.

ChangeTimeRepeat(KeyEvent, Int64, Int32)

Cree un nuevo evento de clave que sea el mismo que el especificado, pero cuyo tiempo de evento y recuento de repeticiones se reemplazan por el valor especificado.

Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
DescribeContents()

Describir los tipos de objetos especiales contenidos en la representación serializado de este Parcelable.

(Heredado de InputEvent)
Dispatch(KeyEvent+ICallback, KeyEvent+DispatcherState, Object)

Envía este evento de clave a un receptor de devolución de llamada.

Dispatch(KeyEvent+ICallback)
Obsoletos.

Envía este evento de clave a un receptor de devolución de llamada.

Dispose()

Libera los recursos mantenidos por este Java del mismo nivel.

(Heredado de Object)
Dispose(Boolean)

Libera los recursos mantenidos por este Java del mismo nivel.

(Heredado de Object)
DisposeUnlessReferenced()

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
Equals(Object)

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
GetDeadChar(Int32, Int32)

Obtiene el carácter que se genera colocando énfasis en el carácter c.

GetHashCode()

Devuelve un valor de código hash para el objeto .

(Heredado de Object)
GetKeyData(KeyCharacterMap+KeyData)
Obsoletos.

Obtenga los datos de conversión de caracteres para un código de clave determinado.

GetMatch(Char[], Int32)
Obsoletos.

Obtiene el primer carácter candidato que este evento de clave puede generar con el meta estado especificado.

GetMatch(Char[], MetaKeyStates)

Obtiene el primer carácter de la matriz de caracteres que el código de clave especificado puede generar.

GetMatch(Char[])

Obtiene el primer carácter de la matriz de caracteres que el código de clave especificado puede generar.

GetUnicodeChar(Int32)
Obsoletos.

Obtiene el carácter Unicode generado por este evento de clave con el meta estado especificado.

GetUnicodeChar(MetaKeyStates)

Obtiene el carácter Unicode generado por la combinación de estado de clave y metaclave especificada.

HasModifiers(MetaKeyStates)

Devuelve true si solo se presionan las teclas modificadoras especificadas.

IsFromSource(InputSourceType)

Determina si el evento procede del origen especificado.

(Heredado de InputEvent)
IsGamepadButton(Keycode)

Devuelve true si el código de clave especificado es un botón del controlador para juegos.

IsMediaSessionKey(Int32)

Devuelve si esta clave se enviará a si android.media.session.MediaSession.Callback no se controla.

IsModifierKey(Keycode)

Devuelve true si este código de clave es una clave modificadora.

JavaFinalize()

Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto .

(Heredado de Object)
KeyCodeFromString(String)

Obtiene un código de clave por su nombre simbólico, como "KEYCODE_A" o una constante numérica equivalente, como "29".

KeyCodeToString(Keycode)

Devuelve una cadena que representa el nombre simbólico del código de clave especificado, como "KEYCODE_A", "KEYCODE_DPAD_UP" o una constante numérica equivalente como "1001" si se desconoce.

MetaStateHasModifiers(MetaKeyStates, MetaKeyStates)

Devuelve true si solo se presionan las teclas modificadoras especificadas según el meta estado especificado.

MetaStateHasNoModifiers(MetaKeyStates)

Devuelve true si no se presiona ninguna tecla modificadora según el meta estado especificado.

NormalizeMetaState(MetaKeyStates)

Normaliza el meta estado especificado.

Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
SetSource(InputSourceType)

Establece el origen de entrada que generó este evento de clave.

StartTracking()

Llámalo durante Callback#onKeyDown para que el sistema realice un seguimiento de la tecla a través de su final (posiblemente, incluida una pulsación larga).

ToArray<T>()

Crea una matriz administrada a partir de este contenedor de matriz Java.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto .

(Heredado de Object)
UnregisterFromRuntime()

Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad.

(Heredado de Object)
Wait()

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><>

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

Aplane este objeto en un paquete.

Implementaciones de interfaz explícitas

Nombre Description
IJavaPeerable.Disposed()

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
IJavaPeerable.Finalized()

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Objeto usado para notificar eventos de tecla y botón.

(Heredado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Objeto usado para notificar eventos de tecla y botón.

Métodos de extensión

Nombre Description
GetJniTypeName(IJavaPeerable)

Obtiene el nombre JNI del tipo de la instancia self.

JavaAs<TResult>(IJavaPeerable)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

Objeto usado para notificar eventos de tecla y botón.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

Se aplica a