Android Vector Asset Studio为一些矢量图像提供额外的填充

前端之家收集整理的这篇文章主要介绍了Android Vector Asset Studio为一些矢量图像提供额外的填充前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试从Vector Asset Studio中的Material Vector包导入一些图标.

但他们带有填充物.

为什么会发生这种情况,如何将其删除

这是不方便的,因为这意味着如果我希望我的图标是XML格式的17dp x 17dp,那么我需要设置它超过17×17以弥补填充.

解决方法

您可以通过将ImageViews android:scaleType设置为适当的值来调整VectorDrawables源图像(.SVG,.PSD)中可能包含的任何“隐式”填充,以便它可以处理VectorDrawables源中秘密包含的填充图片.你还需要设置android:adjustViewBounds =“true”.

例如,假设您的VectorDrawable在显示时在图像的开头有一些非常烦人的填充.你不知道它为什么会在那里因为你没有在ImageView上设置任何android:paddingStart …你需要做的是将ImageViews android:scaleType设置为fitStart并将android:adjustViewBounds设置为true.

TL;博士

调整ImageViews android:scaleType以处理VectorDrawables源文件(.SVG,.PSD)中包含的任何“隐式”填充.还设置android:adjustViewBounds =“true”.

快速示例:

<ImageView android:id="@+id/vectorDrawable_imageView"
           <!--Other ImageView settings-->
           android:adjustViewBounds="true"
           android:scaleType="fitStart"
           app:srcCompat="@drawable/vector_with_implicit_padding_at_start"
/>

这将删除VectorDrawable开头那个烦人的“隐式”填充.

注意:根据渲染需要调整android:scaleType.

猜你在找的Android相关文章