我遇到键盘问题。当它消失时,它占用的空间仍为空白,其余布局不会调整
正常屏幕:
键盘:
键盘被解雇了:
我以前从未见过这个,所以我甚至不确定从哪里开始寻找。这发生在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>
答案 0 :(得分:3)
我添加了
android:windowSoftInputMode="adjustPan"
到我的活动标签中的清单,现在它可以正常工作。我以前从来没有这么做过,我想我的自定义布局会以某种方式弄乱键盘。
感谢@eee评论指出了我正确的方向
答案 1 :(得分:0)
尝试将 ScrollView
更改为 androidx.core.widget.NestedScrollView
这帮助我解决了问题