読者です 読者をやめる 読者になる 読者になる

キー押下、[ENTER]押下でソフトキーボードを閉じる

EditText でキー入力後の [Done]キー押下、[ENTER]押下でソフトキーボードを閉じるには、

以下のように、組むことが多いので忘れないようにメモ。


final EditText editText = (EditText)findViewById(R.id.editText);
editText.setOnKeyListener(new View.OnKeyListener(){
   @Override
   public boolean onKey(View v, int keyCode, KeyEvent event){

      if (event.getAction()==KeyEvent.ACTION_DOWN && keyCode==KeyEvent.KEYCODE_ENTER){
         // ソフトキーボードを閉じる
         InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
         imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
         return true;
      }
      return false;
   }
});