初次接触android的同学,最先接触的也就是android的布局了,因为android的代码与界面是分开的,因此想要界面显示什么,布局应该是第一步,就像一个孩子生下来你要给他穿衣服一样,因此,我们现在所写的布局就是你看到项目运行的界面。
LinearLayout是android五大布局之一,android还有RelativeLayout,FrameLayout,GridLayout,AbsoluteLayout(已过期),其实android开始支持一个布局,可能大家接触的比较少:百分比布局(这个稍后会分享)主要是为了适配而生的布局。LinearLayout是线性布局的控件,它相当于一个大容器,以后我们需要添加的一些控件比如说按钮之类的控件就要添加在它的里面,所谓的线性布局呢就是根据LinearLayout的一个属性来决定这个容器中所有的控件的排列顺序是横着排,还是竖着排。
LinearLayout的属性
- android:baselineAligned:是否允许用户调整它内容的基线。
- android:baselineAlignedChildIndex:当一个线性布局与另一个布局是按基线对齐的一部分,它可以指定其内容的基线对齐方式。
- android:gravity:指定如何在该对象中放置此对象的内容(x/y坐标值)。
- android:orientation:设置它内容的对其方向(横向/竖向)。
- gravity 这个英文单词是重心的意思,在这里就表示停靠位置的意思。
android:layout_gravity 和 android:gravity 的区别
从名字上可以看到,android:gravity是对元素本身说的,元素本身的文本显示在什么地方靠着换个属性设置,不过不设置默认是在左侧的。
android:layout_gravity是相对与它的父元素说的,说明元素显示在父元素的什么位置。
比如说button:android:layout_gravity 表示按钮在父控件上的位置。 android:gravity表示button上的字在button上的位置。
可选值
这两个属性可选的值有:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill