Я наткнулся на что-то странное. Я использую один и тот же компонент CardView
в нескольких местах моего приложения, все с одинаковой высотой (3dp), и все они выглядят одинаково. Однако для одного сценария мне нужно встроить CardView
в ScrollView
. Я ничего не изменил в конфигурации CardView
, но тень теперь выглядит иначе.
Это мой макет:
<ScrollView 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:clipChildren="false"
android:clipToPadding="false"
android:padding="16dp"
android:scrollbars="none">
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clipChildren="false"
android:clipToPadding="false"
app:cardCornerRadius="8dp"
app:cardElevation="3dp"
app:cardUseCompatPadding="true">
<!-- some other views-->
</androidx.cardview.widget.CardView>
</ScrollView>
На рисунке ниже вы видите справа CardView
и слева две тени: сверху тень, генерируемая одним CardView
, снизу - тень, генерируемая, когда CardView
внутри ScrollView
. Как вы можете видеть, второй кажется темнее и толще.
ПРИМЕЧАНИЕ. Цвет фона (#FAFAFA) одинаков в обоих сценариях.