Как убрать появление отступов в BottomSheet при замене фрагмента?

Проблема следующая: имеется bottom_sheet_layout.xml:

<?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/bottom_sheet"
    android:layout_width="350dp"
    android:layout_marginTop="0dp"
    android:paddingTop="0dp"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:background="@android:color/black"
    app:behavior_hideable="false"
    app:behavior_peekHeight="30dp"
    app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior">

    <androidx.fragment.app.FragmentContainerView
        android:id="@+id/bottom_sheet_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="0dp"
        android:paddingTop="0dp" />

</androidx.constraintlayout.widget.ConstraintLayout>

При замене(или добавлении) фрагмента в коде в bottom_sheet_content:

childFragmentManager.beginTransaction()
                            .replace(R.id.bottom_sheet_content, NewBottomSheetFragment())
                            .commit()

Появляется вот такой отступ в BottomSheet: Появляющийся отступ

Код фрагмента NewBottomSheetFragment:

class NewBottomSheetFragment : Fragment() {

    private val viewModel: MainViewModel by viewModels(ownerProducer = ::requireParentFragment)

    override fun onCreateView(
            inflater: LayoutInflater,
            container: ViewGroup?,
            savedInstanceState: Bundle?
    ): View? {
        val inflatedView = inflater.inflate(R.layout.bottomsheet_fragment_new, container, false)
        return inflatedView
    }
}

XML Файл этого фрагмента bottomsheet_fragment_new:

<?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/bottomsheet_part_new"
    android:layout_width="match_parent"
    android:background="@android:color/white"
    android:layout_height="wrap_content"
    android:transitionName="@string/transitionName">

    <ImageView
        android:id="@+id/iv_place_choose_circle_2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="24dp"
        android:src="@drawable/ic_place_choose_circle_default"
        app:layout_constraintStart_toStartOf="@+id/btn_confirm_order"
        app:layout_constraintTop_toBottomOf="@+id/et_address_from" />

    <TextView
        style="@style/BottomSheetText"
        android:id="@+id/et_address_to"
        android:layout_width="wrap_content"
        android:layout_height="26dp"
        android:layout_marginStart="20dp"
        android:textColor="@android:color/secondary_text_light_nodisable"
        app:layout_constraintBottom_toBottomOf="@+id/iv_place_choose_circle_2"
        app:layout_constraintStart_toEndOf="@+id/iv_place_choose_circle_2"
        app:layout_constraintTop_toTopOf="@+id/iv_place_choose_circle_2" />

    <TextView
        style="@style/BottomSheetText"
        android:id="@+id/et_address_from"
        android:layout_width="wrap_content"
        android:layout_height="26dp"
        android:layout_marginStart="20dp"
        android:textColor="@android:color/secondary_text_light_nodisable"
        app:layout_constraintBottom_toBottomOf="@+id/iv_place_choose_circle_1"
        app:layout_constraintStart_toEndOf="@+id/iv_place_choose_circle_1"
        app:layout_constraintTop_toTopOf="@+id/iv_place_choose_circle_1" />

    <Button
        android:id="@+id/btn_confirm_order"
        style="@style/ButtonStyle"
        android:layout_width="308dp"
        android:layout_height="53dp"
        android:layout_marginTop="24dp"
        android:text="@string/btn_places_choice"
        android:theme="@style/PassengerTheme"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.5"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/et_address_to" />

    <ImageView
        android:id="@+id/iv_place_choose_circle_1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:src="@drawable/ic_place_choose_circle_default"
        app:layout_constraintStart_toStartOf="@+id/iv_place_choose_circle_2"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

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


Ответы (1 шт):

Автор решения: Дмитрий

Разобрался. Ошибка была в строке android:fitsSystemWindows = "true". Убрав её, отступ исчез. Когда разбирался, то видел инфу, что coordinatorlayout не дружит с fragmenttransactions при таком флаге, и везде добавляет такие отступы.

→ Ссылка