5

实际上,我正在开发一个 Android 应用程序。问题是关于在 VectorDrawables 中导出带有渐变的图标。我使用 Adob​​e Illustrator 绘制图标并将它们导出到 Android Studio 的 Asset Studio。

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

我在 Adob​​e Illustrator 中创建了图标,看起来很完美,并且按照材料设计遵循一切。但是当我将它们导出到 Android Studio 时,图像发生了很大的变化,因为矢量可绘制对象还不完全支持渐变。Android 7.0 + 设备支持 VectorDrawables 中的渐变。另一个问题是谷歌说具有高度的物体应该显示 45° 的长阴影(基于渐变)。但另一方面,它们并不完全支持渐变。如何将渐变应用程序图标扩展到 7.0 以下的设备。

Ps 我导出 Illustrator 文件以支持自适应图标。请有人指导我在 VectorDrawables 中实现渐变阴影,以便它们看起来类似于旧图标

4

1 回答 1

3

您可以手动将其添加到矢量 xml 文件中的路径中,而不是在 illustrator 中包含阴影的渐变:

<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>

更多详情https://medium.com/google-developers/implementing-adaptive-icons-1e4d1795470e

注意:渐变支持已添加到 API 24 中的 VectorDrawables。

于 2018-05-08T18:52:35.253 回答