我在一个活动中有 2 个编辑文本和一个搜索栏。我想防止软键盘在触摸搜索栏时弹出,即使编辑文本具有焦点。我也试图强制搜索栏焦点,但它也没有用。
我试图隐藏三个 SeekBar 方法(onProgressChanged
、onStopTrackingTouch
和 onStartTrackingTouch
)上的软键盘,并且一个接一个,但这不起作用。
是否可能以及如何实现?
感谢
private void hideSoftKeyboard(){
// HIDE SOFTKEYBOARD
InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0);
}
/**
* SEEKBAR Start tracking
*/
public void onStartTrackingTouch(SeekBar seekBar) {
// HIDE SOFTKEYBOARD
hideSoftKeyboard();
}
抱歉,经过多次搜索,我找到了解决方案。这是:
private void hideSoftKeyboard() {
// HIDE SOFTKEYBOARD
//InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);
// imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0);
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mSeekBar.getWindowToken(), 0);
}