一个控制键盘显示与隐藏的工具类分享给大家
public class KeyBoardTool {
/**
* 假设输入法在窗体上已经显示。则隐藏。反之则显示
* @param context
*/
public static void showOrhide(Context context){
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
}
/**
* 显示软键盘视图
* @param context
* @param view为接受软键盘输入的视图
*/
public static void showKeyBoard(Context context,View view){
InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(view,InputMethodManager.SHOW_FORCED);
}
/**
* 隐藏软键盘
* @param context
* @param view为接受软键盘输入的视图
*/
public static void hideKeyBoard(Context context,View view){
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
}
/**
* 获取输入法打开的状态
* @param context
* @return 若返回true,则表示输入法打开
*/
public static boolean getStateOfKeyBoard(Context context){
InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
return imm.isActive();
}
}
public class KeyBoardTool {
/**
* 假设输入法在窗体上已经显示。则隐藏。反之则显示
* @param context
*/
public static void showOrhide(Context context){
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
}
/**
* 显示软键盘视图
* @param context
* @param view为接受软键盘输入的视图
*/
public static void showKeyBoard(Context context,View view){
InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(view,InputMethodManager.SHOW_FORCED);
}
/**
* 隐藏软键盘
* @param context
* @param view为接受软键盘输入的视图
*/
public static void hideKeyBoard(Context context,View view){
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
}
/**
* 获取输入法打开的状态
* @param context
* @return 若返回true,则表示输入法打开
*/
public static boolean getStateOfKeyBoard(Context context){
InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
return imm.isActive();
}
}