最近我在android上做了一些测试,我发现android:src填充的行为是非常奇怪的,比较android:背景。
这是我的抽屉:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/colorAccent"/>
<padding
android:top="1dp"
android:right="1dp"
android:bottom="1dp"
android:left="1dp"
/>
</shape>
</item>
<item android:top = 2>
<shape android:shape="oval">
<solid android:color="@color/white"/>
</shape>
</item>
</layer-list>
在mainActivity布局中,我有另一个用于测试的图像视图。我将图像视图设置为40 to宽度和高度。然后,通过将android:src与android:后台属性设置为可绘制的属性,对它们进行了测试。结果如下:
Android:src
Android:背景
android:背景,正如你所看到的,是预期的行为,因为我将白色圆圈向下移动2,并且它有符合粉红色椭圆形填充的填充。现在的android:src是直截了当的,因为在所有白色椭圆形的第一层,即粉红色椭圆形上方的一层没有显示。第二,形状变成扁平的椭圆形。
知道为什么会这样吗?
发布于 2016-12-04 21:11:27
src
与android:scaleType
一起工作,您可以在其中提供不同的选项( ScaleType )
而背景总是以scaleType of FitXY
为视图,覆盖整个区域。
如果你想要和src背景一样的行为,
放android:scaleType="FitXY“。还有其他选项您也应该检查。
https://stackoverflow.com/questions/40966205
复制