Android中使用EditText会牵扯到软键盘,没少踩坑,今天总结一下
1,Android中阻止activity弹出软键盘
android:windowSoftInputMode="stateAlwaysHidden|stateHidden"
2,隐藏软键盘
/**
* 隐藏键盘
*/
protected void hideInput() {
InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
View v = getWindow().peekDecorView();
if (null != v) {
imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
}
}
3,显示软键盘
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
4,监听软键盘弹出还是收起
public class SoftKeyboardStateHelper implements ViewTreeObserver.OnGlobalLayoutListener {
public interface SoftKeyboardStateListener {