当用户按下键盘上的返回键时隐藏键盘

时间:2012-01-21 23:33:57

标签: android key

首先,我不知道 Return 键或 Backspace 的关键代码是什么是Android键盘上有一条线的代码。

其次我在屏幕上有多个edittext字段,当用户点击 Return 键时,我希望每个字段都重新签名。

    imm= (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);

   public void onClick(View v) {
     int flag;
     flag=v.getId();
     // keycode for return
     if(v.getId()==XX) {
         imm.hideSoftInputFromWindow(YYY.getWindowToken(), 0);

     }

XX Return 键的密钥代码,YYY是我应该填写的内容。我希望YYY泛型适用于所有edittext程序中的字段

1 个答案:

答案 0 :(得分:1)

我不确定你为什么试图用onClick方法处理这个问题。我认为,正确的方法是为每个EditText视图调用setOnKeyListener(),在OnKeyListener中,您可以执行此操作:

public boolean onKey(View v, int keyCode, KeyEvent event) {
    if (keyCode = KeyEvent.KEYCODE_ENTER) {
        // non-null only for enter key
        imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
        return true;
    }
    return false;
}

OnKeyListener的单个实例可用于您希望此行为的所有EditText视图(实际上是任何视图)。