ImageView выше BottomAppBar - PullRequest
       11

ImageView выше BottomAppBar

1 голос
/ 03 мая 2020

Мне нужно поместить изображение между верхней границей родителя и верхней границей BottomAppBar, но когда я это делаю, мой BottomAppBar выглядит не так:

enter image description here

Мой макет

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">


        <ImageView
            android:src="@color/colorGraySuper"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintBottom_toTopOf="@id/containerBottomAppBar"
            android:layout_width="match_parent"
            android:layout_marginBottom="40dp"
            android:layout_marginTop="40dp"
            android:layout_marginEnd="20dp"
            android:layout_marginStart="20dp"
            android:layout_height="0dp">


        </ImageView>


    <androidx.coordinatorlayout.widget.CoordinatorLayout
        android:id="@+id/containerBottomAppBar"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">



        <com.fromsakuraso13.waifu.presentation.views.RoundedBottomAppBar
            android:id="@+id/navigationBottom"
            app:fabAlignmentMode="end"
            app:leftTopCornerSize="10dp"
            app:rightTopCornerSize="10dp"
            android:backgroundTint="@android:color/white"
            android:background="@drawable/bg_navigation_bottom"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom" />



        <com.google.android.material.floatingactionbutton.FloatingActionButton
            app:backgroundTint="@color/colorAccentLight"
            android:id="@+id/fab"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_anchor="@id/navigationBottom" />


    </androidx.coordinatorlayout.widget.CoordinatorLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

1 Ответ

0 голосов
/ 03 мая 2020

Вы всегда должны использовать CoordinatorLayout в качестве макета контейнера, содержащего другие макеты (например, ConstraintLayout или RelativeLayout), которые следует использовать в качестве родительского макета для ограничения других представлений, как указано здесь . Однако любые виды, для которых требуются эффекты, такие как уклонение Snackbar для FAB или сворачивающаяся панель инструментов с AppBarLayout, должны быть размещены как прямой потомок CoordinatorLayout.

Для вашего случая я бы предложил разместить выглядит следующим образом:

<CoordinatorLayout>

    <ConstraintLayout>    //you can skip this if there are no other views except ImageView
        <ImageView/>
    </ConstraintLayout>

    <RoundedBottomActionBar/>
    <FloatingActionButton/>

</CoordinatorLayout/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...