Android SoftKeyboardStateListener在棒棒糖设备上不工作

Android SoftKeyboardStateListener在棒棒糖设备上不工作,android,android-softkeyboard,Android,Android Softkeyboard,这是我用来监听软键盘可见性变化的方式: final SoftKeyboardStateWatcher softKeyboardStateWatcher = new SoftKeyboardStateWatcher(mainLayout); softKeyboardStateWatcher.addSoftKeyboardStateListener(new SoftKeyboardStateWatcher.SoftKeyboardStateListener()

这是我用来监听软键盘可见性变化的方式:

    final SoftKeyboardStateWatcher softKeyboardStateWatcher
            = new SoftKeyboardStateWatcher(mainLayout);
    softKeyboardStateWatcher.addSoftKeyboardStateListener(new SoftKeyboardStateWatcher.SoftKeyboardStateListener() {
        @Override
        public void onSoftKeyboardOpened(int keyboardHeightInPx) {
            bottomToolbar.setVisibility(View.GONE);
        }

        @Override
        public void onSoftKeyboardClosed() {
            bottomToolbar.setVisibility(View.VISIBLE);
        }
    });
我的应用程序是为SDK>=16设计的,适用于所有棒棒糖前的设备,我在HTC One M7和5.0.2 Android上进行了测试,结果还可以。但是,当我尝试用Nexus 4、API 22和Nexus 5、API 23测试它时,
OnSoftKeyboardOpen
onSoftKeyboardClosed
从未被调用

我怎样才能解决这个问题

谢谢

试试这个

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);

我希望这能帮助你……)

不,这没用。此代码仅显示键盘。我在“捕捉”键盘显示和隐藏的时刻时遇到问题。您好,您有解决此问题的方法或原因吗?:)