【发布时间】:2011-07-20 23:26:53
【问题描述】:
在阅读了几个类似问题的答案*后,我确实意识到 onKeyListener() 不会从软(虚拟)键盘获取按键事件。它只能从硬(物理)键盘获取它们。解决方法是使用 TextWatcher 或 onKeyboardActionListener。我有以下问题:
(1) 有没有一种方法可以通过只实现一个监听器来监听来自任何键盘(软键盘或硬键盘)的按键?或者基本上是一个适用于两者的单一 API?
(2) TextWatcher 或 onKeyboardActionListener 与 onKeyListener() 的 onKey() 方法不同,不传递当前具有焦点的视图(并且用户正在其中输入输入)。那么,如果我要使用 TextWatcher 或 onKeyboardActionListener,如何获得当前的焦点视图?我需要它才能根据输入在用户键入输入的 EditText 上设置一些属性。
*相关问题: onKeyListener not working on virtual keyboard, onKeyListener not working with soft keyboard (Android), Android: why is my OnKeyListener() not called?
谢谢!
【问题讨论】:
标签: android event-handling keyboard listener