在官方网站层列表的解释有一个例子,我不能理解。
例如:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<bitmap
android:gravity="center"
android:src="@drawable/android_red" />
</item>
<item
android:left="10dp"
android:top="10dp">
<bitmap
android:gravity="center"
android:src="@drawable/android_green" />
</item>
<item
android:left="20dp"
android:top="20dp">
<bitmap
android:gravity="center"
android:src="@drawable/android_blue" />
</item>
</layer-list>
输出:
我不明白两件事:
为什么红色的安卓不在中间。他是唯一一个没有顶部或左侧偏移的人。也许我不明白左上偏移的含义,从哪一点开始计算偏移?
android:gravity=“center”是与所有容器相关还是与上面的项目相关(“他的兄弟”),即,第二个项目是与容器相关还是与第一个项目相关?
1条答案
按热度按时间5w9g7ksd1#
我认为,如果你复制这段代码,并尝试探索它,你可以得到的想法。事实上,红色的安卓在中间,但在这张图片中并不清楚,所以如果你把它放在imageview中,它会像这样
我给背景以黄色来表示清楚,所以你可以看到红色的android在中间。
2-android:gravity=“center”用于包含它的项目,请注意,项目将延伸到父级宽度和高度,因此您可以注意到,例如,蓝色android位于其项目的中心,其左上角为(10,10),右下角与父级相同