Android 如何根据VectorDrawables中的材质设计指南为应用程序图标创建渐变长阴影?

Android 如何根据VectorDrawables中的材质设计指南为应用程序图标创建渐变长阴影?,android,icons,adobe-illustrator,android-vectordrawable,adaptive-icon,Android,Icons,Adobe Illustrator,Android Vectordrawable,Adaptive Icon,实际上,我正在开发一个Android应用程序。问题是在矢量绘图表中导出带有渐变的图标。我使用Adobe Illustrator绘制图标,并将其导出到Android Studio的Asset Studio 根据材质设计指南,对象的阴影应为径向渐变,其中第一个滑块位于32%的位置,不透明度为15%。第二个滑块位于62%位置,不透明度为2%。最后一个滑块为100%,颜色完全透明,角度为45° 我已经在Adobe Illustrator中创建了该图标,它看起来非常完美,并按照材质设计遵循所有内容。 但当

实际上,我正在开发一个Android应用程序。问题是在矢量绘图表中导出带有渐变的图标。我使用Adobe Illustrator绘制图标,并将其导出到Android Studio的Asset Studio

根据材质设计指南,对象的阴影应为径向渐变,其中第一个滑块位于32%的位置,不透明度为15%。第二个滑块位于62%位置,不透明度为2%。最后一个滑块为100%,颜色完全透明,角度为45°

我已经在Adobe Illustrator中创建了该图标,它看起来非常完美,并按照材质设计遵循所有内容。 但当我将它们导出到Android Studio时,图像会发生很大的变化,因为矢量绘图功能还不能完全支持渐变。Android 7.0+设备支持VectorDrawables中的渐变。 另一个问题是谷歌说,一个具有仰角的物体应该显示45°的长阴影(基于梯度)。但另一方面,它们不能完全支持渐变。如何将渐变应用程序图标扩展到7.0以下的设备

另外,我导出Illustrator文件以支持自适应图标。
请指导我在VectorDrawables中实现渐变阴影,使其看起来类似于传统图标,而不是在illustrator中包含阴影的渐变,您可以手动将其添加到矢量xml文件中的路径:

<path 
    android:pathData="...">
    <aapt:attr name="android:fillColor">
      <gradient
          android:type="radial"
          android:centerX="54"
          android:centerY="54"
          android:gradientRadius="76.37">
        <!-- 15% black from center to 32% stop -->
        <item android:offset="0.0" android:color="#26000000" />
        <item android:offset="0.32" android:color="#26000000" />
        <!-- 2% black at 62% stop -->
        <item android:offset="0.62" android:color="#05000000" />
        <!-- fade to transparent -->
        <item android:offset="1.0" android:color="#00000000" />
      </gradient>
    </aapt:attr>
</path>

注:在API 24中,梯度支持被添加到VectorDrawables中