键盘的隐藏与显示

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/synola/article/details/42493397
键盘的隐藏:
import android.view.inputmethod.InputMethodManager;
     private void hideInputMethod(View view) {
         final InputMethodManager imm = (InputMethodManager) mContext.getSystemService(
                 Context.INPUT_METHOD_SERVICE);
         if (imm != null) {
             imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
         }
     }

键盘的显示:

    private void showInputMethod(View view) {
        final InputMethodManager imm = (InputMethodManager) mContext.getSystemService(
                Context.INPUT_METHOD_SERVICE);
        if (imm != null) {
            imm.showSoftInput(view, 0);
        }
    }

contacts中的peopleActivity界面搜索的键盘隐藏与显示代码:

    public void setSearchMode(boolean flag) {
        if (mSearchMode != flag) {
            mSearchMode = flag;
            update(false /* skipAnimation */);
            if (mSearchView == null) {
                return;
            }
            if (mSearchMode) {
            	//设置键盘的焦点的获取及键盘的显示
                setFocusOnSearchView();
            } else {
                mSearchView.setText(null);
                /**
                 * 
                 * @{
                 */
                //当点击返回按钮后隐藏键盘
                hideInputMethod(mSearchView);
                /**
                 * @}
                 */
            }
        } else if (flag) {
            // Everything is already set up. Still make sure the keyboard is up
            if (mSearchView != null) setFocusOnSearchView();
        }
    }


其中setFocusOnSearchView();

    public void setFocusOnSearchView() {
        mSearchView.requestFocus();
        showInputMethod(mSearchView); // Workaround for the "IME not popping up" issue.
    }



猜你喜欢

转载自blog.csdn.net/synola/article/details/42493397