Неправильное Android поведение при предпросмотре в студии - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть макет с двумя слоями, фоном и содержимым (макет ограничения и изображение):

<?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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/colorPrimary"
    android:id="@+id/background_layout">



    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/content_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="150dp"
        android:gravity="center_horizontal"
        app:layout_constraintTop_toBottomOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:elevation="20dp"
        android:background="@color/backgroundColor">

    <com.google.android.material.card.MaterialCardView
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:layout_alignParentTop="true"
        android:translationY="50dp"
        app:cardCornerRadius="50dp"
        app:layout_constraintBottom_toTopOf="@+id/relativeLayout2"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        android:elevation="21dp"
        app:cardElevation="21dp">

        <ImageView
            android:id="@+id/circular_image"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:scaleType="fitCenter"
            android:src="@mipmap/ic_launcher" />
    </com.google.android.material.card.MaterialCardView>

</androidx.constraintlayout.widget.ConstraintLayout>

Это должно быть похоже на изображение . Когда я удаляю эту строку в CardView

    android:elevation="21dp"

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

Хорошо, если мы добавим android: высота и удаление приложения: изображение cardElevation будет в макете содержимого в эмуляторе и поверх него в предварительном просмотре.

У меня вопрос, что происходит?

1 Ответ

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

Попробуйте добавить:

android:clipToPadding="false"

в MaterialCardView.

...