一 、
android:layout_gravity:是相对于包含该元素的父元素来说的,设置该元素在父元素的什么位置。比如一个布局A里面嵌套了布局B,那么我们就在布局B里面配置这个参数就能决定布局B放在布局A的什么地方。
android:gravity:是对view控件本身来说的,是用来设置view本身的文本应该显示在view的什么位置,默认值是左侧。比如一个LinearLayout布局里面有一个Button,那我在LinearLayout里面设置这个参数就能绝对Button的放置位置,同样,我们在Button里面设置这个参数,就能决定文字放置的位置。
二、
注意:对于LinearLayout:
如果设置android:orientation="vertical",那么其内部的控件的android:layout_gravity的设置只在水平方向生效。也就是说:android:gravity="center|bottom"和android:gravity="center"效果一样。
如果设置android:orientation="horizontal",那么其内部的控件的android:layout_gravity属性只在垂直方向生效。
android:orientation = "horizontal" 指定布局内控件排列方式为 水平排列
android:orientation = "vertical" 指定布局内控件排列方式为 垂直排列
不设定android:orientation,默认情况为水平排列
三、
left和start效果一样,end和right效果一样。系统会提示我们建议使用end替代right,兼容rtl布局