【问题标题】:Hiding the keyboard when user hit the return key on keyboard当用户按下键盘上的返回键时隐藏键盘
【发布时间】:2012-01-21 23:33:57
【问题描述】:

首先,我不知道 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 generic 应用于程序中的所有编辑文本字段

【问题讨论】:

    标签: android key


    【解决方案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 视图(实际上是任何视图)。

    【讨论】:

      猜你喜欢
      • 2014-12-26
      • 2017-05-23
      • 1970-01-01
      • 2014-06-08
      • 1970-01-01
      • 1970-01-01
      • 2011-04-04
      • 1970-01-01
      • 2011-06-16
      相关资源
      最近更新 更多