Я хочу уведомить (прослушиватель событий), когда панель Softkey открыта или закрыта в андроиде? Является ли это возможным? если возможно, скажите мне, пожалуйста.
setContentView(mView);
mView.getViewTreeObserver().addOnGlobalLayoutListener(
new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
Rect r = new Rect();
mView.getWindowVisibleDisplayFrame(r);
int heightDiff = mView.getRootView().getHeight()
- (r.bottom - r.top);
if (heightDiff > 100) {
//Keybord Action change
}
}
});
Обнаруживать, открыта ли клавиатура:
InputMethodManager imm =
(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
//keyboard is visible
if(imm != null) {
//do something, e.g., hide the keyboard like so :
//imm.hideSoftInputFromWindow(mEditText.getWindowToken(), 0);
//or fire an event like so:
//mButton.performClick();
} else {
//do something
}
вы можете добиться такого:
public static InputMethodManager imm = null;
if(!(imm==null)){
imm.getEnabledInputMethodList();
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,1);
// here do whatever you want to do
}else
{
}