一. 简介
AbsoluteLayout(绝对布局),是因为绝对布局,我们基本上都是不会使用的,但是我们还是可以了解这个AbsoluteLayout布局的。放入该布局的UI控件通过 android:layout_x
和 android:layout_y
两个属性指定其准确的坐标值,并显示在屏幕上。
理论上,AbsoluteLayout布局可用以完成任何的布局设计,灵活性很大,但是在实际的工程应用中不提倡使用这种布局。因为使用这种布局不但需要精确计算每个组件的大小,增大运算量,而且当应用程序在不同屏幕尺寸的手机上运行时会产生不同效果。
二. Xml方式
1. 所有的布局共有的属性
① View在左上右下四个方向和其他View之间的距离,值是 dp
1 | android:layout_marginStart (android:layout_marginLeft) |
② View内部元素到View左上右下边框之间的距离,值是 dp
1 | android:paddingStart (android:paddingLeft) |
③ 容器 内部的对齐方式 以及 容器相对于父容器的对齐方式
1 | android:gravity //设置布局管理器内组件的对齐方式 |
2. AbsoluteLayout
① AbsoluteLayout 的布局属性就两个
android:layout_x : 设置控件在布局中的 X 轴方向距离。
android:layout_y : 设置控件在布局中的 Y 抽方向距离。
AbsoluteLayout 只有这个两个属性,从绝对布局的名字就可以看出来,就是在 X 轴方向和 Y 轴方向通过 dip值(或者 px ) 绝对固定距离。
② AbsoluteLayout 的小例子
③ 结论
写在后面的布局View会覆盖写在前面的View。
在绝对定位中,如果子元素不设置layout_x和layout_y,那么它们的默认值是0。