2016-10-23 52 views
0

我正在做一个计算项目。所以,我有我的EditText箱的工作,我想隐藏softkeyboard如果用户点击完成(或任何其他类型的按钮,GO,NEXT等)和EditText上框为空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; 
    } 
};