Keyboard的顯示與隱藏,Keyboard顯示隱藏
一個修飾鍵盤顯示與隱藏的工具類分享給大家
public class KeyBoardTool {
/**
* 如果IME在視窗上已經顯示,則隱藏,反之則顯示
* @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);
}
/**
* 擷取IME開啟的狀態
* @param context
* @return 若返回true,則表示IME開啟
*/
public static boolean getStateOfKeyBoard(Context context){
InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
return imm.isActive();
}
}