Android(Milestone/Droid):View.OnKeyListener工作不正常?

Android(Milestone/Droid):View.OnKeyListener工作不正常?,android,listener,textview,milestone,Android,Listener,Textview,Milestone,我正在使用一个简单的EditText并注册一个视图.onkeylister。当EditView文本的某些条件适用时,应发生一些GUI更改(淡入/淡出视图)。 在emulator中,这可以按预期工作。在摩托罗拉Droid/Milestone上,监听器不工作,只有 按DEL键后,第一次调用侦听器,之后总是调用 激活数字输入时,侦听器工作正常 注意:我使用类型为“\u TEXT\u FLAG\u NO\u suggestions”禁用了建议,并使用IME操作IME\u action\u GO对此进行了

我正在使用一个简单的
EditText
并注册一个
视图.onkeylister
。当EditView文本的某些条件适用时,应发生一些GUI更改(淡入/淡出视图)。 在emulator中,这可以按预期工作。在摩托罗拉Droid/Milestone上,监听器不工作,只有

  • 按DEL键后,第一次调用侦听器,之后总是调用
  • 激活数字输入时,侦听器工作正常

  • 注意:我使用类型为“\u TEXT\u FLAG\u NO\u suggestions”禁用了建议,并使用IME操作IME\u action\u GO对此进行了解决(否则用户无法“启动”请求)。

    找到了一种更好的工作方式来实现这一点:使用
    EditText.addTextChangedListener
    TextWatcher
    类(并实现
    TextWatcher.onTextChanged(字符序列s、int-start、int-before、int-count)
    ),在Milestone/Droid上也能很好地工作。

    TextWatcher无法完全替换onKeyListener。例如,如果您的textbox为空,您将如何检测用户按下的DEL键?或者,如果您根本没有textbox,并且希望检测按键事件,该怎么办?

    xperia也存在同样的问题。只有DEL被发送到onKeyListener,但其余的key stro被发送到onKeyListenerkes直接修改文本。如果我把键盘改成黑客键盘,情况就不同了。所以我想这和索尼的软键盘有关。