【问题标题】:How to create custom shadow for view?如何为视图创建自定义阴影?
【发布时间】:2020-09-20 21:44:27
【问题描述】:

我想为我自定义的视图创建自定义阴影,就像我的计划一样。

自定义阴影看起来像卡片视图高度。

我需要这种阴影

【问题讨论】:

标签: java android xml styles shadow


【解决方案1】:

嗯。这个非常简单,并且产生与您要求的非常相似的(imo)结果。显然,可以/应该调整高程、角半径等参数。

<?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:padding="16dp"
    android:layout_height="match_parent"
    tools:context=".FirstFragment">

    <androidx.cardview.widget.CardView
        android:id="@+id/textview_first"
        android:layout_width="300dp"
        android:layout_height="100dp"
        app:cardCornerRadius="20dp"
        app:cardElevation="8dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

【讨论】:

  • 我说过,我需要看起来像 CardElevation的Shadow,而不使用cardview或cardelevation或elevation。因为我知道我不能改变海拔的颜色。
【解决方案2】:

检查这个。这对我有用。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Bottom 2dp Shadow -->
<item>
    <shape  android:shape="rectangle">
        <solid android:color="#d8d8d8" />
        <corners android:radius="7dp" />
    </shape>
</item>

<!-- White Top color -->
<item android:bottom="3px">
    <shape  android:shape="rectangle">
        <solid android:color="#FFFFFF" />
        <corners android:radius="7dp" />
    </shape>
</item>

【讨论】:

  • 谢谢,但它不是我问题的正确答案。似乎底部笔触不是阴影..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-28
  • 1970-01-01
  • 1970-01-01
  • 2021-12-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多