我正在开发一个进行计算的项目。因此,我的 EditText
框正在工作,并且如果用户单击“DONE”(或任何其他类型的按钮、GO、NEXT 等),我想隐藏 softkeyboard
。 ) 并且 EditText 框为空
像这样:
EditText 为空 -> 用户单击按钮 -> 软键盘隐藏
我有这段代码,是我使用互联网上的教程和指南编写的
我确实知道它是管理软键盘
中按钮的监听器
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
为空时,如何管理监听器并且不会出现错误?
最佳答案
您可以使用,例如:
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;
}
};
关于java - Android - 如果按键时 EditText 为空,如何隐藏软键盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40198978/