1

我试图通过下面显示的 Zeplin 特性来弄清楚我究竟如何创建以下可绘制对象

在此处输入图像描述

齐柏林特点:

在此处输入图像描述

我知道要实现这一点,我需要一个椭圆形实心形状的图层列表和一个渐变渐变的环。我不明白的是如何以具体的方式实现这一点,以及如何将那里提到的那些外部阴影转换为可绘制代码。我设法以某种方式实现了这一点,但“技术”不太好,而且它只适用于 145dpx145dp ImageView 尺寸,如果我尝试将它用于另一个尺寸,它不适合。请注意,我必须为环添加多个图层,因为只有一个会淡出,我认为尺寸越大,在环开始时颜色会越褪色

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape
        android:innerRadius="20dp"
        android:shape="ring"
        android:thickness="7dp"
        android:useLevel="false">
        <gradient
            android:centerColor="@color/azure"
            android:endColor="@color/azure_0"
            android:gradientRadius="24.5dp"
            android:startColor="@color/azure"
            android:type="radial" />
    </shape>
</item>
<item>
    <shape
        android:innerRadius="20dp"
        android:shape="ring"
        android:thickness="7dp"
        android:useLevel="false">
        <gradient
            android:centerColor="@color/azure"
            android:endColor="@color/azure_0"
            android:gradientRadius="24.5dp"
            android:startColor="@color/azure"
            android:type="radial" />
    </shape>
</item>
<item
    android:width="40dp"
    android:height="40dp"
    android:left="3.5dp"
    android:top="3.5dp">
    <shape android:shape="oval">
        <gradient
            android:endColor="@color/slate_grey"
            android:startColor="@color/charcoal_grey_three"
            android:type="linear" />
    </shape>
</item>

有没有更优雅的方法来实现这一点并能够在多个视图维度上使用它,或者有人可以向我解释如何解释这些阴影吗?

4

0 回答 0