java 手机软键盘相关,判断软键盘状态,显示软键盘,隐藏软键盘
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 手机软键盘相关,判断软键盘状态,显示软键盘,隐藏软键盘相关的知识,希望对你有一定的参考价值。
public class KeyboardUtil {
// 软键盘的状态
/** 键盘在显示状态 */
public static final String KEYBOARD_SHOW = "keyboard_show";
/** 键盘隐藏状态 */
public static final String KEYBOARD_HIDE = "keyboard_hide";
/**
* @title: checkKeyboardStatus
* @description: 判断软键盘的状态
* @return String
* @throws
*/
public static String checkKeyboardStatus(Activity activity) {
final View v = activity.getWindow().peekDecorView();
if (v != null && v.getWindowToken() != null) {
return KEYBOARD_SHOW;
}
return KEYBOARD_HIDE;
}
/**
* @describe:手动调用软键盘
*/
public static void showKeyboard(Activity activity) {
InputMethodManager manager =
(InputMethodManager) activity.getBaseContext().getSystemService(Activity.INPUT_METHOD_SERVICE);
manager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
}
public static void showKeyboard(View view, Activity activity) {
InputMethodManager manager =
(InputMethodManager) activity.getBaseContext().getSystemService(Activity.INPUT_METHOD_SERVICE);
manager.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT);
}
/**
* @describe:隐藏软键盘
*/
public static void hideKeyboard(Activity activity) {
if (activity != null && activity.getCurrentFocus() != null) {
String status = KeyboardUtil.checkKeyboardStatus(activity);
if (!KeyboardUtil.KEYBOARD_HIDE.equals(status)) {
// 隐藏软键盘
InputMethodManager manager =
(InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
if (manager != null) {
manager.hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
}
}
}
}
}
以上是关于java 手机软键盘相关,判断软键盘状态,显示软键盘,隐藏软键盘的主要内容,如果未能解决你的问题,请参考以下文章
软键盘显示与隐藏的监听
H5如何对android和ios手机软键盘的监听
vue 软键盘采坑
在 Toast 下保留软键盘 - ANDROID
Android 软键盘控制方法以及开发中遇到的一些问题。
Android软键盘弹出和收回监听