Android - 键盘显示/隐藏时不调用 onConfigurationChanged

标签 android keyboard android-softkeyboard

我需要在按下隐藏键盘时检测隐藏键盘
我的源代码

<activity
    android:name="com.teamios.info.activity.MainScreenActivity"
    android:screenOrientation="landscape"
    android:theme="@style/Theme.MyScreenTranNorman"
    android:configChanges="orientation|keyboardHidden"
    android:windowSoftInputMode="stateUnchanged|adjustPan" />

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    Toast.makeText(this, "keyboard visible", Toast.LENGTH_SHORT).show();
}

我在 samsung galaxy nexus phone android os 4.2.1 上测试,但是当键盘隐藏时 Toast 没有显示 请帮助我。

最佳答案

 <activity
        android:name="com.teamios.info.activity.MainScreenActivity"
        android:theme="@style/Theme.MyScreenTranNorman"
        android:configChanges="orientation|keyboardHidden"
        android:windowSoftInputMode="stateUnchanged|adjustPan" />

    @Override
    public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
    if (newConfig.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_NO) {
        Toast.makeText(this, "keyboard visible", Toast.LENGTH_SHORT).show();
    } else if (newConfig.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES) {
        Toast.makeText(this, "keyboard hidden", Toast.LENGTH_SHORT).show();
    }
    }

并添加

<activity android:name=".MyActivity" android:screenOrientation="landscape " > </activity>

在 list 类中。

关于Android - 键盘显示/隐藏时不调用 onConfigurationChanged,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18735198/

相关文章:

ios - 通过 hitTest 在 Swift 中关闭键盘

android - SearchView 可以同时具有语音搜索按钮和键盘语音输入吗?

android - 在 AlertDialog 中使用 onTouchEvent

android - FabricViewStateManager : setState called without a StateWrapper

android - 使用多个 Activity 的 Google Analytics for Android

cocoa - 如果在其他应用程序中按下全局键盘快捷键,如何防止发出蜂鸣声?

java - 为什么 deleteSurroundingText 不适用于表情符号并全选?

android - 从 URL Google Map API 或 SDK 从搜索区域的特征 ID 获取位置?

android - 在android中使用DB登录注册

python 输入设备fflush