Фрагменты не меняются при открытии клавиатуры - PullRequest
1 голос
/ 05 апреля 2019

У меня есть EditText, который прослушивает события щелчка на действии и запускает фрагмент, используя fragmentTransaction.add();и действие, и фрагмент имеют ConstraintLayout в качестве корневой ViewGroup.Структура фрагмента выглядит следующим образом (некоторые элементы для краткости опущены):

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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/fragment_CitySelection"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="25dp"
    android:background="@color/white"
    android:clickable="true"
    android:focusable="true"
    tools:context=".CitySelectionFragment">


    <EditText
        android:id="@+id/city_AutoCompleteTextView"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginTop="8dp"
        android:layout_marginEnd="16dp"
        android:background="@layout/rounded_border_edittext"
        android:hint="Ville"
        android:paddingStart="8dp"
        android:paddingLeft="8dp"
        android:paddingTop="6dp"
        android:paddingEnd="8dp"
        android:paddingRight="8dp"
        android:paddingBottom="10dp"
        android:textSize="22sp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/back_ImageButton" />

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/cities_RecyclerView"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginStart="16dp"
        android:layout_marginTop="12dp"
        android:layout_marginEnd="16dp"
        android:layout_marginBottom="8dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/city_AutoCompleteTextView" />

</androidx.constraintlayout.widget.ConstraintLayout>

Я попытался добавить android:windowSoftInputMode="adjustResize" в AndroidManifest и программно из ответов на некоторые похожие вопросы.

1 Ответ

0 голосов
/ 12 апреля 2019

Проблема вызвана тем, что какой-то код, который я добавил, чтобы сделать строку состояния полностью прозрачной, что я нашел в этом ответе .

Добавление android:fitsSystemWindows="true" к макету фрагмента, решило проблему.

...