KeyEvent クラス

定義

キーとボタンのイベントを報告するために使用されるオブジェクト。

[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
継承
属性
実装

注釈

キーとボタンのイベントを報告するために使用されるオブジェクト。

各キー押下は、一連のキー イベントによって記述されます。 キーを押すと、 #ACTION_DOWNを含むキー イベントが開始されます。 キーが繰り返されるのに十分長く保持されている場合、最初のダウンは、 #ACTION_DOWN#getRepeatCount() の 0 以外の値を持つ追加のキー イベントに従います。 最後のキー イベントは、キーアップの #ACTION_UP です。 キーの押下が取り消されると、キーアップ イベントに #FLAG_CANCELED フラグが設定されます。

キー イベントには、通常、キー コード (#getKeyCode())、スキャン コード (#getScanCode())、メタ状態 (#getMetaState()) が伴います。 このクラスでは、キー コード定数が定義されています。 スキャン コード定数は、OS から取得された未加工のデバイス固有のコードであるため、 KeyCharacterMapを使用して解釈しない限り、アプリケーションにとって一般的には意味がありません。 メタ状態は、 #META_SHIFT_ON#META_ALT_ONなどのキー修飾子の押された状態を表します。

通常、キー コードは、入力デバイス上の個々のキーと 1 対 1 で対応します。 多くのキーとキーの組み合わせは、さまざまな入力デバイスでまったく異なる機能を提供するため、それらを解釈するときは注意が必要です。 キーを文字にマッピングするときは、常に入力デバイスに関連付けられている KeyCharacterMap を使用します。 複数のキー入力デバイスが同時にアクティブになる場合があり、それぞれに独自のキー文字マップがあることに注意してください。

ソフト入力メソッドでは、テキストを入力する複数の発明的な方法を使用できるため、ソフト キーボードを押すとキー イベントが生成される保証はありません。これは IME の裁量に委ねられ、実際にはそのようなイベントを送信することはお勧めしません。 ソフト入力メソッドのキーに対して KeyEvents を受け取る必要はありません。 特に、既定のソフトウェア キーボードは、Jelly Bean 以降を対象とするアプリケーションにキー イベントを送信することはなく、削除の一部の押下に対してのみイベントを送信し、Ice Cream Sandwich 以前を対象とするアプリケーションにキーを返します。 他のソフトウェア入力方法では、バージョンに関係なくキー イベントが送信されないことがあることに注意してください。 ソフトウェア キーボードを使用した特定の操作が必要な場合は、 android.view.inputmethod.EditorInfo#IME_ACTION_DONE などのエディター アクションを使用することを検討してください。これは、アプリケーションがキー押下にどのように反応するかについてユーザーに対してより可視性を提供するためです。

IME と対話する場合、フレームワークは、1 回の繰り返しキー コードまたは挿入する文字のシーケンスを指定する特別なアクション #ACTION_MULTIPLE を使用して、キー イベントを配信できます。

一般に、フレームワークでは、ビューに配信するキー イベントが常に完全なキー シーケンスを構成することを保証できません。一部のイベントは、配信前にビューを含めることで削除または変更される可能性があるためです。 ビューの実装は、#FLAG_CANCELEDを処理するように準備する必要があり、前のキー押下の#ACTION_DOWNを最初に受け取らずに新しい#ACTION_UPを受け取るなどの異常な状況を許容する必要があります。

さまざまな種類の入力デバイスとソースがキーとボタンを表す方法の詳細については、 InputDevice を参照してください。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

名前 説明
KeyEvent(Int64, Int64, KeyEventActions, Keycode, Int32, MetaKeyStates, Int32, Int32, KeyEventFlags, InputSourceType)

新しいキー イベントを作成します。

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

新しいキー イベントを作成します。

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

新しいキー イベントを作成します。

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

新しいキー イベントを作成します。

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

新しいキー イベントを作成します。

KeyEvent(Int64, String, Int32, KeyEventFlags)

文字列の新しいキー イベントを作成します。

KeyEvent(IntPtr, JniHandleOwnership)

JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

KeyEvent(KeyEvent, Int64, Int32)
古い.

既存のキー イベントをコピーし、その時間と繰り返し数を変更します。

KeyEvent(KeyEvent)

既存のキー イベントの正確なコピーを作成します。

KeyEvent(KeyEventActions, Keycode)

新しいキー イベントを作成します。

フィールド

名前 説明
KeycodeClose
古い.

キー コード定数: AC Close。

KeycodeDemoApp1
古い.

キー コード定数: デモ アプリケーション キー #1。

KeycodeDemoApp2
古い.

キー コード定数: デモ アプリケーション キー #2。

KeycodeDemoApp3
古い.

キー コード定数: デモ アプリケーション キー #3。

KeycodeDemoApp4
古い.

キー コード定数: デモ アプリケーション キー #4。

KeycodeDictate
古い.

キー コード定数: 入力フィールドにディクテーションを開始するには

KeycodeDoNotDisturb
古い.

キー コード定数: [応答不可] モードを切り替えます。

KeycodeEmojiPicker
古い.

キー コード定数: 絵文字ピッカーを開くには。

KeycodeF13
古い.

キー コード定数: F13 キー。

KeycodeF14
古い.

キー コード定数: F14 キー。

KeycodeF15
古い.

キー コード定数: F15 キー。

KeycodeF16
古い.

キー コード定数: F16 キー。

KeycodeF17
古い.

キー コード定数: F17 キー。

KeycodeF18
古い.

キー コード定数: F18 キー。

KeycodeF19
古い.

キー コード定数: F19 キー。

KeycodeF20
古い.

キー コード定数: F20 キー。

KeycodeF21
古い.

キー コード定数: F21 キー。

KeycodeF22
古い.

キー コード定数: F22 キー。

KeycodeF23
古い.

キー コード定数: F23 キー。

KeycodeF24
古い.

キー コード定数: F24 キー。

KeycodeFeaturedApp1
古い.

キー コード定数: おすすめアプリケーション キー #1。

KeycodeFeaturedApp2
古い.

キー コード定数: おすすめアプリケーション キー #2。

KeycodeFeaturedApp3
古い.

キー コード定数: おすすめアプリケーション キー #3。

KeycodeFeaturedApp4
古い.

キー コード定数: おすすめアプリケーション キー #4。

KeycodeFullscreen
古い.

キー コード定数: (現在のアプリケーションで) 全画面表示モードを切り替えるには。

KeycodeKeyboardBacklightDown
古い.

キー コード定数: キーボードバックライトダウン。

KeycodeKeyboardBacklightToggle
古い.

キー コード定数: キーボードバックライトトグル。

KeycodeKeyboardBacklightUp
古い.

キー コード定数: キーボード バックライトアップ。

KeycodeLock
古い.

キー コード定数: 画面をロックします。

KeycodeMacro1
古い.

キー コード定数: システムを介してユーザーが使用をカスタマイズできるボタン。

KeycodeMacro2
古い.

キー コード定数: システムを介してユーザーが使用をカスタマイズできるボタン。

KeycodeMacro3
古い.

キー コード定数: システムを介してユーザーが使用をカスタマイズできるボタン。

KeycodeMacro4
古い.

キー コード定数: システムを介してユーザーが使用をカスタマイズできるボタン。

KeycodeNew
古い.

キー コード定数: AC 新規。

KeycodePrint
古い.

キー コード定数: 印刷します。

KeycodeRecentApps
古い.

キー コード定数: 最近使ったアプリ ビューを開くには (a.

KeycodeScreenshot
古い.

キー コード定数: スクリーンショットを取得するには

        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
古い.

キー コード定数: スタイラスのバレルの主ボタン。

KeycodeStylusButtonSecondary
古い.

キー コード定数: スタイラスのバレルのセカンダリ ボタン。

KeycodeStylusButtonTail
古い.

キー コード定数: スタイラスの末尾にあるボタン。

KeycodeStylusButtonTertiary
古い.

キー コード定数: スタイラスのバレルの 3 番目のボタン。

KeycodeVideoApp1
古い.

キー コード定数: ビデオ アプリケーション キー #1。

KeycodeVideoApp2
古い.

キー コード定数: ビデオ アプリケーション キー #2。

KeycodeVideoApp3
古い.

キー コード定数: ビデオ アプリケーション キー #3。

KeycodeVideoApp4
古い.

キー コード定数: ビデオ アプリケーション キー #4。

KeycodeVideoApp5
古い.

キー コード定数: ビデオ アプリケーション キー #5。

KeycodeVideoApp6
古い.

キー コード定数: ビデオ アプリケーション キー #6。

KeycodeVideoApp7
古い.

キー コード定数: ビデオ アプリケーション キー #7。

KeycodeVideoApp8
古い.

キー コード定数: ビデオ アプリケーション キー #8。

MaxKeycode
古い.

この API レベルで定義されている最大のキー コードを指定します。

プロパティ

名前 説明
Action

このキー イベントのアクションを取得します。

Characters

#ACTION_MULTIPLEのキー コードを持つ#KEYCODE_UNKNOWN イベントの特殊なケースでは、これはイベントに関連付けられた文字の生の文字列です。

Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Creator

KeyEvent インスタンスのパーセル可能な作成者を取得します。

Device

このイベントの発生元のデバイスを取得します。

(継承元 InputEvent)
DeviceId

このイベントが発生したデバイスの ID を取得します。 ID が 0 の場合は、イベントが物理デバイスから取得されておらず、既定のキーマップにマップされたことを示します。 他の数値は任意であり、値に依存しないでください。

DisplayLabel

このキーの主文字を取得します。 つまり、物理的に印刷されるラベルです。

DownTime

android.os.SystemClock#uptimeMillis時間ベースで、最新のキーダウン イベントの時刻を取得します。

EventTime

android.os.SystemClock#uptimeMillis時間ベースで、このイベントが発生した時刻を取得します。

Flags

このキー イベントのフラグを返します。

Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
HasNoModifiers

修飾子キーが押されていない場合は true を返します。

IsAltPressed

Alt メタ キーの押された状態を返します。

IsCanceled

#ACTION_UP イベントの場合は、#FLAG_CANCELEDに従ってイベントが取り消されたことを示します。

IsCapsLockOn

CAPS LOCK メタ キーのロック状態を返します。

IsCtrlPressed

Ctrl メタ キーの押された状態を返します。

IsFunctionPressed

FUNCTION メタ キーの押された状態を返します。

IsLongPress

#ACTION_DOWN イベントの場合は、#FLAG_LONG_PRESSに従ってイベントが取り消されたことを示します。

IsMetaPressed

META メタ キーの押された状態を返します。

IsNumLockOn

NUM LOCK メタ キーのロック状態を返します。

IsPrintingKey

このキーがグリフを生成する場合は true を返します。

IsScrollLockOn

SCROLL LOCK メタ キーのロック状態を返します。

IsShiftPressed

Shift メタ キーの押された状態を返します。

IsSymPressed

SYM メタ キーの押された状態を返します。

IsSystem

これはシステム キーですか? システム キーは、メニューショートカットには使用できません。

IsTracking

#ACTION_UP イベントの場合は、#FLAG_TRACKINGに従ってイベントが最初のダウン イベントから追跡されていることを示します。

JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
JniPeerMembers

Android バインド ランタイムの.NETによって使用される JNI ピア メタデータを取得します。

KeyCharacterMap

キーボード デバイスに関連付けられている KeyCharacterMap を取得します。

KeyCode

キー イベントのキー コードを取得します。

MaxKeyCode

最大キーコードを返します。

MetaState

メタ キーの状態を返します。

ModifierMetaStateMask

有効なすべての修飾子キーメタ状態ビットを含むマスクを取得します。

Modifiers

修飾子キーの状態を返します。

Number

キーに関連付けられている番号または記号を取得します。 数値ではなく、文字値が返されます。 キーが数値ではなく記号である場合、シンボルは再調整されます。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
RepeatCount

イベントの繰り返し数を取得します。

ScanCode

このキー イベントのハードウェア キー ID を取得します。

Source

イベントのソースを取得します。

ThresholdClass

Android バインド ランタイムの.NETによって使用される JNI クラス ハンドルを取得します。

ThresholdType

Android バインド ランタイムの.NETによって使用されるマネージド型を取得します。

UnicodeChar

指定したキーとメタ キーの状態の組み合わせによって生成された Unicode 文字を取得します。

メソッド

名前 説明
ChangeAction(KeyEvent, KeyEventActions)

指定したキー イベントと同じで、アクションが指定された値に置き換えられる新しいキー イベントを作成します。

ChangeFlags(KeyEvent, KeyEventFlags)

指定したキー イベントと同じで、フラグが指定された値に置き換えられる新しいキー イベントを作成します。

ChangeTimeRepeat(KeyEvent, Int64, Int32, KeyEventFlags)

指定したイベントと同じで、イベント時間と繰り返し数が指定された値に置き換えられる新しいキー イベントを作成します。

ChangeTimeRepeat(KeyEvent, Int64, Int32)

指定したイベントと同じで、イベント時間と繰り返し数が指定された値に置き換えられる新しいキー イベントを作成します。

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
DescribeContents()

このパーセルのマーシャリング表現に含まれる特殊なオブジェクトの種類について説明します。

(継承元 InputEvent)
Dispatch(KeyEvent+ICallback, KeyEvent+DispatcherState, Object)

このキー イベントをコールバック レシーバーにディスパッチします。

Dispatch(KeyEvent+ICallback)
古い.

このキー イベントをコールバック レシーバーにディスパッチします。

Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
Equals(Object)

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GetDeadChar(Int32, Int32)

文字 c にアクセントを付けることで生成される文字を取得します。

GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
GetKeyData(KeyCharacterMap+KeyData)
古い.

特定のキー コードの文字変換データを取得します。

GetMatch(Char[], Int32)
古い.

このキー イベントが特定のメタ状態で生成できる最初の候補文字を取得します。

GetMatch(Char[], MetaKeyStates)

指定したキー コードによって生成できる文字配列の最初の文字を取得します。

GetMatch(Char[])

指定したキー コードによって生成できる文字配列の最初の文字を取得します。

GetUnicodeChar(Int32)
古い.

指定したメタ状態のこのキー イベントによって生成された Unicode 文字を取得します。

GetUnicodeChar(MetaKeyStates)

指定したキーとメタ キーの状態の組み合わせによって生成された Unicode 文字を取得します。

HasModifiers(MetaKeyStates)

指定した修飾子キーのみが押された場合は true を返します。

IsFromSource(InputSourceType)

イベントが指定されたソースからのものかどうかを判断します。

(継承元 InputEvent)
IsGamepadButton(Keycode)

指定したキーコードがゲームパッド ボタンの場合は true を返します。

IsMediaSessionKey(Int32)

このキーが処理されない場合に android.media.session.MediaSession.Callback に送信されるかどうかを返します。

IsModifierKey(Keycode)

このキー コードが修飾子キーの場合は true を返します。

JavaFinalize()

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
KeyCodeFromString(String)

"KEYCODE_A" などのシンボリック名または等価の数値定数 ("29" など) でキーコードを取得します。

KeyCodeToString(Keycode)

"KEYCODE_A"、"KEYCODE_DPAD_UP"、または不明な場合は"1001" などの等価の数値定数など、指定したキーコードのシンボル名を表す文字列を返します。

MetaStateHasModifiers(MetaKeyStates, MetaKeyStates)

指定したメタ状態に従って、指定した修飾子キーのみが押された場合は true を返します。

MetaStateHasNoModifiers(MetaKeyStates)

指定したメタ状態に従って修飾子キーが押されていない場合は true を返します。

NormalizeMetaState(MetaKeyStates)

指定したメタ状態を正規化します。

Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
SetSource(InputSourceType)

このキー イベントを生成した入力ソースを設定します。

StartTracking()

これを Callback#onKeyDown 中に呼び出して、システムが最後までキーを追跡するようにします (長押しを含む可能性があります)。

ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

このオブジェクトをパーセルにフラット化します。

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
IJavaPeerable.Finalized()

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

キーとボタンのイベントを報告するために使用されるオブジェクト。

(継承元 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

キーとボタンのイベントを報告するために使用されるオブジェクト。

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

キーとボタンのイベントを報告するために使用されるオブジェクト。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象