Edittext帮助 - onKeyListener不起作用

时间:2012-01-23 18:57:00

标签: android android-widget android-edittext

我有一个简单的edittext,我已添加到我的布局中。我在onCreate方法中添加了一个简单的OnKeyListener:

final EditText simpleEditText = (EditText) findViewById(R.id.editText1);
simpleEditText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View arg0, int arg1, KeyEvent arg2) {
    System.out.println("HELLO");
    return false;
}
});

当应用程序启动时,一切正常。对于按下的每个键,HELLO打印两次 - 一次用于DOWN操作,一次用于UP操作。

现在,当我用鼠标单击edittext时,edittext不再运行onKey方法中的代码。我究竟做错了什么?在用户单击edittext后,我仍然希望收到关键事件。我不关心鼠标点击,我只是用它来重新定位光标。重新定位光标后,不再注册键事件。

请参阅附图以了解更多信息。

由于 ZAMIL

http://i.stack.imgur.com/j2DP7.jpg

2 个答案:

答案 0 :(得分:1)

As per android API,onKey仅对按下的物理键。您可能需要考虑使用OnClickListener进行鼠标单击。这是API documentation

答案 1 :(得分:0)

点击事件不是关键事件。除了关键事件之外,您不会(也不应该)接收onKey事件。