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#getModifierBehavior() key modifier behavior)的 描述KeyCharacterMap的键盘功能而异。

MetaKeyKeyListener 实现和已切换键修饰符。 当键修饰符切换到闩锁或锁定状态时,修饰符的状态存储在 Editable 文本缓冲区或客户端管理的元状态整数中。 除了<>键盘已报告在 中KeyEvent#getMetaState()按下的修饰符之外,还应将这些闩锁或锁定修饰符视为持有 <b>。 换句话说, 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.MetaKeyKeyListenerJava 文档。

此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。

构造函数

MetaKeyKeyListener()
MetaKeyKeyListener(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

属性

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 <通知/em> 或 <em>interrupted</em>。<>

(继承自 Object)
Wait(Int64)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
Wait(Int64, Int32)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/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)的状态以及选择文本的伪元状态的行为。

适用于