У меня проблема точно такая же: LINK, такая же ситуация и те же компоненты в макетах. Единственное различие - это панель инструментов, но, очевидно, я использую appcompat, и поведение такое же.RecyclerView скрывает панель инструментов и компоновку, когда видна SoftKeyboard
Внимание, а не только панель инструментов скрыта, но также и верхняя часть recyclerview. Это похоже на то, что весь фрагмент транслируется, когда экранная клавиатура видна.
Я использую панель инструментов, как это в main.xml моей деятельности:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<include layout="@layout/toolbar" />
<FrameLayout
android:id="@+id/container_root"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
Tha framelayout заменяется этим:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:orientation="vertical"
tools:ignore="MergeRootFrame" >
<!--<include layout="@layout/toolbar" />-->
<com.astuetz.PagerSlidingTabStrip
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@color/primary"
android:textColor="#FFFFFF"
app:pstsIndicatorColor="#FFFFFF"
app:pstsPaddingMiddle="true"
android:maxHeight="20dp"
android:elevation="5dp"
/>
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>
А внутри вида пейджера я вкладка с макетом этого фрагмента с recyclerview:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerViewChat"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="50dip"/>
<EditText
android:id="@+id/txtChatLine"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="@string/txt_hint"
android:layout_alignParentBottom="true"
android:layout_alignParentStart="true"
android:layout_toStartOf="@+id/button1">
</EditText>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/btn_send"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true" />
</RelativeLayout>
Когда я начинаю вводить текст в е dittext весь макет поднимается, панель инструментов становится невидимой (вне экрана), а recyclerview не прокручивается, но движется вверх.
Удаление adjustPan равно установка adjustUnspecified, который по умолчанию adjustResize если есть прокручивать элемент. Если это решает вашу проблему, я думаю, вы должны явно написать 'android: windowSoftInputMode =" adjustResize "для читателей вашего кода, чтобы понять, что вы действительно хотите это значение. –