2016-10-23 4 views
0

私は計算を行うプロジェクトに取り組んでいます。だから私はEditTextボックスが動作していて、ユーザーがDONE(または他の種類のボタン、GO、NEXTなど)をクリックしてEditTextボックスが空の場合はsoftkeyboardを隠したいAndroid - キーを押すとEditTextが空の場合、ソフトキーボードを非表示にするにはどうすればよいですか?

ように:

のEditTextが空である - >ユーザーがボタンをクリック - > softkeyboardが

を隠し、私は私がインターネット

上のチュートリアルとガイドを使用して書き込むために管理し、コードのこの部分を持って、私はそれを管理することです知っていますがボタンのリスナーはsoftkeyboard

TextView.OnEditorActionListener mEditor = new TextView.OnEditorActionListener() 
{ 
    @Override 
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) 
    { 
     if (actionId == EditorInfo.IME_ACTION_DONE) 
     { 
      //Calculations method 
     } 

     return false; 
    } 
}; 

私の質問は次のとおりです。EditTextが空でエラーが発生しない場合、どのようにしてリスナーを管理できますか?

答えて

1

あなたは、たとえば、使用することができます。

TextView.OnEditorActionListener mEditor = new TextView.OnEditorActionListener() 
{ 
    @Override 
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) 
    { 
     if (actionId == EditorInfo.IME_ACTION_DONE) 
     { 
      if (!TextUtils.isEmpty(v.getText().toString())){ 
       // you calculations method 
      } else { 
       InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(
       Context.INPUT_METHOD_SERVICE); 
     imm.hideSoftInputFromWindow(v.getApplicationWindowToken(), 
       InputMethodManager.HIDE_NOT_ALWAYS); 
      } 
     } 

     return false; 
    } 
}; 
関連する問題