版权声明:本文为博主原创文章,未经博主允许不得转载。 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.
}