【问题标题】:Android Vector Drawable IntrinsicAndroid Vector Drawable Intrinsic
【发布时间】:2017-04-27 06:24:17
【问题描述】:

VectorDrawable 指的是以下内容:

机器人:宽度

用于定义drawable的固有宽度。这 支持所有维度单位,通常用dp指定。

“内在”是什么意思?我认为 VectorDrawable 的点与大小无关。如果我不提供宽度,我的应用程序会崩溃。这个值有什么作用?我没有使用它,但无论如何我必须输入一个值。

【问题讨论】:

    标签: android android-layout android-vectordrawable


    【解决方案1】:

    android:widthandroid:height 指定的 VectorDrawable 的固有尺寸为可绘制对象提供了一个默认大小

    考虑以下几点:

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:srcCompat="@drawable/example_drawable"/>
    

    这是什么尺寸?

    ImageView 使用了wrap_content,所以它会包裹到可绘制对象的大小。如果 VectorDrawables 没有指定默认的高度和宽度,那么这个 ImageView 就没有意义了,它应该按照内容的大小换行,但是内容没有大小!

    因此VectorDrawables 必须具有默认宽度和高度。您可以将它们缩放到您需要它们的大小,但如果在某些情况下没有从其他地方告诉他们应该是什么大小,他们需要知道该怎么做。

    【讨论】:

    • 酷。我告诉它我的程序的大小,所以在我的情况下,我想这不是必需的。我试图不指定,但我的程序崩溃了。如果我有它们,工作正常。如果我输入不同的值,则没有区别。再说一次,我的情况。既然您说如果我使用 wrap_content 这很重要,那么这更有意义。我还没有尝试过,但我会将其标记为正确。我有点太忙了,无法实际测试这一点。 TY