Share via


MetaKeyKeyListener 類別

定義

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

[Android.Runtime.Register("android/text/method/MetaKeyKeyListener", DoNotGenerateAcw=true)]
public abstract class MetaKeyKeyListener : Java.Lang.Object
[<Android.Runtime.Register("android/text/method/MetaKeyKeyListener", DoNotGenerateAcw=true)>]
type MetaKeyKeyListener = class
    inherit Object
繼承
MetaKeyKeyListener
衍生
屬性

備註

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

關心中繼狀態的索引鍵接聽程式應該繼承自這個類別;您不應該直接在用戶端中具現化此類別。

這個類別提供兩種機制來追蹤可以一起使用或獨立使用的中繼狀態。

<ul >< li > 方法,例如 #handleKeyDown(long, int, KeyEvent)#getMetaState(long) 在中繼金鑰狀態位元遮罩上運作。 </li li ><> 方法,例如 #onKeyDown(View, Editable, int, KeyEvent)#getMetaState(CharSequence, int) 在文字緩衝區中 Editable 儲存為範圍的中繼索引鍵狀態旗標上運作。 範圍只會描述文字編輯器目前的中繼索引鍵狀態;它們不會包含任何位置資訊。 </li >< /ul>

這個類別的行為會根據鍵盤裝置的 中所述 KeyCharacterMap 的鍵盤功能而有所不同,例如 KeyCharacterMap#getModifierBehavior() key modifier behavior

MetaKeyKeyListener 會實作音調和切換按鍵修飾詞。 當按鍵修飾詞切換為閂鎖或鎖定狀態時,修飾詞的狀態會儲存在 Editable 文字緩衝區或用戶端管理的中繼狀態整數中。 除了鍵盤已回報為在 中按下之外,這些閂鎖或鎖定修飾詞應該視為保留 < b ><> 。 KeyEvent#getMetaState() 換句話說,會 MetaKeyKeyListener 增強鍵盤所提供的中繼狀態;它不會取代它。 這一區別很重要,以確保中繼索引鍵不會由 MetaKeyKeyListener 或 處理, 或 KeyEvent#KEYCODE_CAPS_LOCKKeyEvent#KEYCODE_NUM_LOCK 視為考慮。

為了確保正確的中繼索引鍵行為,在將索引鍵碼對應至字元時,應該使用下列模式:

private char getUnicodeChar(TextKeyListener listener, KeyEvent event, Editable textBuffer) { // Use the combined meta states from the event and the key listener. int metaState = event.getMetaState() | listener.getMetaState(textBuffer); return event.getUnicodeChar(metaState); }

android.text.method.MetaKeyKeyListener JAVA 檔。

此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據中所述的詞彙使用。

建構函式

MetaKeyKeyListener()
MetaKeyKeyListener(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 標記法時所使用的建構函式;由執行時間呼叫。

屬性

Class

傳回這個 Object 的執行時間類別。

(繼承來源 Object)
Handle

基礎 Android 實例的控制碼。

(繼承來源 Object)
JniIdentityHashCode

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
JniPeerMembers

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

PeerReference

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
ThresholdClass

此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。

ThresholdType

此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。

方法

AdjustMetaAfterKeypress(Int64)

在處理按鍵之後呼叫此方法,使中繼狀態在放開) 後仍不會關閉) 或準備重設為未關閉 (時,中繼狀態將會重設為未移轉 (。

AdjustMetaAfterKeypress(ISpannable)

在處理按鍵之後呼叫此方法,使中繼狀態在放開) 後仍不會關閉) 或準備重設為未關閉 (時,中繼狀態將會重設為未移轉 (。

ClearMetaKeyState(IEditable, MetaKeyStates)

如果已鎖定,則會清除指定中繼金鑰的狀態。

ClearMetaKeyState(MetaKeyStates, MetaStates)

如果已鎖定,則會清除指定中繼金鑰的狀態。

ClearMetaKeyState(View, IEditable, MetaKeyStates)

如果已鎖定,則會清除指定中繼金鑰的狀態。

Clone()

建立並傳回這個 物件的複本。

(繼承來源 Object)
Dispose()

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
Dispose(Boolean)

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
GetMetaState(ICharSequence)

取得中繼索引鍵的狀態。

GetMetaState(ICharSequence, KeyEvent)

取得特定索引鍵事件的中繼索引鍵狀態。

GetMetaState(ICharSequence, MetaStates)

取得特定中繼索引鍵的狀態。

GetMetaState(ICharSequence, MetaStates, KeyEvent)

取得要搭配特定索引鍵事件使用之特定中繼金鑰的狀態。

GetMetaState(MetaKeyStates)

取得中繼索引鍵的狀態。

GetMetaState(MetaKeyStates, MetaStates)

取得中繼索引鍵的狀態。

GetMetaState(String)

取得中繼索引鍵的狀態。

GetMetaState(String, KeyEvent)

取得特定索引鍵事件的中繼索引鍵狀態。

GetMetaState(String, MetaStates)

取得特定中繼索引鍵的狀態。

GetMetaState(String, MetaStates, KeyEvent)

取得要搭配特定索引鍵事件使用之特定中繼金鑰的狀態。

HandleKeyDown(Int64, Keycode, KeyEvent)

處理中繼鍵的按下。

HandleKeyUp(Int64, Keycode, KeyEvent)

處理中繼金鑰的發行。

IsMetaTracker(ICharSequence, Object)

如果這個物件是這個類別用來追蹤指定文字中任何中繼狀態的物件,則傳回 true。

IsMetaTracker(String, Object)

如果這個物件是這個類別用來追蹤指定文字中任何中繼狀態的物件,則傳回 true。

IsSelectingMetaTracker(ICharSequence, Object)

如果這個物件是這個類別用來追蹤指定文字中選取中繼狀態的物件,則傳回 true。

IsSelectingMetaTracker(String, Object)

如果這個物件是這個類別用來追蹤指定文字中選取中繼狀態的物件,則傳回 true。

JavaFinalize()

當垃圾收集判斷物件沒有其他參考時,由物件上的垃圾收集行程呼叫。

(繼承來源 Object)
Notify()

喚醒正在等候此物件的監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
OnKeyDown(View, IEditable, Keycode, KeyEvent)

處理中繼鍵的按下。

OnKeyUp(View, IEditable, Keycode, KeyEvent)

處理中繼金鑰的發行。

ResetLockedMeta(Int64)

如果您是忽略鎖定的中繼狀態的方法, (方向鍵,例如) ,而且您處理金鑰。

ResetLockedMeta(ISpannable)

如果您是忽略鎖定的中繼狀態的方法, (方向鍵,例如) ,而且您處理金鑰。

ResetMetaState(ISpannable)

將所有中繼狀態重設為非使用中狀態。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
ToArray<T>()

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
Wait()

讓目前的執行緒等到喚醒為止,通常是藉由 < em > notified < /em > 或 < em > interrupted < /em > 來喚醒。

(繼承來源 Object)
Wait(Int64)

讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。

(繼承來源 Object)

明確介面實作

IJavaPeerable.Disposed()

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
IJavaPeerable.DisposeUnlessReferenced()

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
IJavaPeerable.Finalized()

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

GetJniTypeName(IJavaPeerable)

此基類會封裝追蹤中繼索引鍵狀態的行為,例如 SHIFT、ALT 和 SYM,以及選取文字的虛擬中繼狀態。

適用於