如何隐藏软键盘onStartTrackingTouch搜索栏

时间:2012-09-18 11:50:58

标签: android android-softkeyboard seekbar

我在活动中有2个编辑文本和一个搜索栏。即使编辑文本具有焦点,我也希望在触摸搜索栏时防止弹出软键盘。我也试图强迫搜索栏焦点,但它也没有用。

我试图在三个SeekBar方法(onProgressChangedonStopTrackingTouchonStartTrackingTouch)上隐藏软键盘,并且还逐个隐藏,但这不起作用。

是否有可能以及如何实现这一目标?

THX


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();

}

1 个答案:

答案 0 :(得分:1)

对不起,我经过多次搜索后找到了解决方案..就是这样:

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);

}