用户选择回来的事件?

时间:2011-08-05 12:45:00

标签: android events keyboard android-edittext

当用户在EditText上输入文本后选择Back并且键盘消失后,如何捕获事件?

3 个答案:

答案 0 :(得分:4)

在您的Activity类中覆盖onBackPressed:

    @Override
    public void onBackPressed() {
        //If keyboard is on, do what you want
        super.onBackPressed();
    }

答案 1 :(得分:1)

如果您想在用户在EditText中输入文本后抓住后退键并按下后退键,则应使用:

EditText edit = (EditText)findViewById(R.id.yourId);
    edit.setOnKeyListener(new EditText.OnKeyListener(){
                public boolean onKey(View v, int keyCode, KeyEvent event) {
                    if(keyCode == KeyEvent.KEYCODE_BACK){
                    System.out.println("******back key caught in edit.setOnKeyListener");
                }
                    return false;
                }

            });

答案 2 :(得分:1)

我遇到了同样的问题。 Vineet Shukla的答案无效,直到我确定委托是EditText.OnKeyListener。在此之前,它是一个View.OnKeyListener,我没有看到KeyEvent.KEYCODE_BACK == keyCode,因为我甚至看到onKey曾经被调用过。我希望这对有类似问题的人有帮助,虽然这篇文章已经有一年了。欢呼声。