Android - 键盘消失时留下空白 space

Android - A blank space remains when the keyboard disappears

我的键盘有问题。当它消失时,它所占据的space保持空白,其余布局不调整

普通屏幕:

带键盘:

键盘已关闭:

我以前从未见过这个,所以我什至不知道从哪里开始看。这发生在 4.2.2 和 5.1

另一条重要信息是,这是一个包含所有内容的自定义 LinearLayout。也许与此有关。如有必要,我可以上传任何代码。

这是主布局文件shell。

<com.edgetechlabs.app_v2.MasterLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<!-- Menu (Drawer)-->
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:visibility="visible"
    android:layout_height="match_parent"
    android:orientation="vertical" >
     <ScrollView
        android:id="@+id/activity_main_menu_listview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/drawer_background"
        android:cacheColorHint="#00000000" >
     </ScrollView>
</LinearLayout>
<!-- Fragment Holder -->
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <!-- This is where fragment will show up -->
    <FrameLayout
        android:id="@+id/fragment_master"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </FrameLayout>
</LinearLayout>

这是我的清单文件

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MasterActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

我加了

android:windowSoftInputMode="adjustPan"

添加到我的 activity 标签内的清单中,现在可以使用了。我以前从来没有这样做过,我想我的自定义布局以某种方式弄乱了键盘。

感谢@eee 的评论,它为我指明了正确的方向

尝试将 ScrollView 更改为 androidx.core.widget.NestedScrollView

这帮助我解决了问题