- 基于窗體打開輸入法
/**
* 基于窗體打開輸入法
*/
@OnClick(R.id.btn_open_window) public void onOpenWindow(){
InputMethodManager inputMethodManager =
(InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(getWindow().getDecorView(), InputMethodManager.SHOW_FORCED);
}
-
/**
* 基于窗體關閉輸入法
*/
@OnClick(R.id.btn_close_window) public void onCloseWindow(){
InputMethodManager inputMethodManager =
(InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(getWindow().getDecorView().getWindowToken(), 0);
}
- 基于窗體自動打開關閉輸入法
/**
* 基于窗體自動打開關閉輸入法
*/
@OnClick(R.id.btn_toggle_window) public void onToggleWindow(){
InputMethodManager inputMethodManager =
(InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
inputMethodManager.toggleSoftInputFromWindow(getWindow().getDecorView().getWindowToken(),
0, 0);
}
- 打開或關閉輸入法, 與基于窗體的差別在于它無法關閉基于窗體打開的輸入法
/**
* 打開或關閉輸入法, 與基于窗體的差別在于它無法關閉基于窗體打開的輸入法
*/
@OnClick(R.id.btn_toggle) public void onToggle(){
InputMethodManager inputMethodManager =
(InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
inputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
}