我有一个包含EditText和Button的片段。
我的目标是实现以下行为。
然而,我无法实现第4和第5步。
单击按钮时,EditText的焦点会自动释放,软键盘也会隐藏。 (实际上,无论我在哪里点击,除了EditText,它都会发生)
我可以通过在Button的OnClickListener中以编程方式显示键盘来实现类似的行为,但这不是我真正想要的,因为软键盘在隐藏后会出现。
现在,我怎样才能实现第4步?
答案 0 :(得分:0)
4:将文本值设置为空字符串
editText.setText("");
这不会影响任何东西,但会将editText设置为空字符串,并保持软键盘显示。
在您的活动工具View.OnClickListener
中 5:,添加onClick()
方法,如下所示:
@Override
public void onClick(View view) {
if(view.getId() == R.id.relativelayout_id){
// hide soft keyboard on touching the background
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
}
}
添加此行以停止点击声音,当您点击背景时,您不需要这样做。
relativeLayout.setSoundEffectsEnabled(false);