Изменение размера макета с помощью Recycler View при появлении программной клавиатуры - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть макет, который содержит вид Recycler, панель инструментов и EditText в нижней части Layout. Я хочу изменить размер окна Recycler, когда появится экранная клавиатура. Панель инструментов должна оставаться вверху, а текст редактирования должен двигаться вверх с Размер клавиатуры должен изменяться только.

Код макета выглядит следующим образом:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    android:orientation="vertical"
    android:background="#ffffff">
    <androidx.appcompat.widget.Toolbar
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="#fff"
        android:elevation="4dp"
        app:title="Toolbar" />

    <androidx.recyclerview.widget.RecyclerView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ffffff"
        android:gravity="center"
        android:orientation="horizontal"
        android:padding="8dp">
        <EditText
            android:layout_width="0dp"
            android:layout_height="45dp"
            android:layout_gravity="center_vertical"
            android:layout_weight="1"
            android:backgroundTint="#757575"
            android:textCursorDrawable="@drawable/cursor_color"
            android:textSize="16sp" />
    </LinearLayout>
</LinearLayout>

Я использую окно в полноэкранном режиме. Текущая ситуация заключается в том, что весь макет когда программная клавиатура появляется, ее нажимают вверх, панель инструментов невидима, и видна только часть представления переработчика.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 14 апреля 2020

добавить android:windowSoftInputMode="adjustResize" к тегу активности в манифесте. xml

0 голосов
/ 14 апреля 2020

Попробуйте это у меня сработало:

((LinearLayoutManager)mRview.getLayoutManager()).setStackFromEnd(true);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...