1. 软键盘将布局向上挤的问题
通常我们在Activity配置SoftInputMode来处理软键盘弹出时布局该如何显示的问题,但如果是Fragment这种方法就不好使了,所以我们在Fragment中设定:
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
这样在软键盘被弹出后原来布局就不会被向上挤了
2. 打开和关闭软键盘
public class KeyBoardUtil {
//打开软键盘
public static void openKeybord(EditText mEditText, Context mContext) {
InputMethodManager imm = (InputMethodManager) mContext
.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(mEditText, InputMethodManager.RESULT_SHOWN);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,
InputMethodManager.HIDE_IMPLICIT_ONLY);
}
//关闭软键盘
public static void closeKeybord(EditText mEditText, Context mContext) {
InputMethodManager imm = (InputMethodManager) mContext
.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mEditText.getWindowToken(), 0);
}
}