android:layout_gravity和android:gravity属性的区别

android:gravity / android:layout_gravity区别:

android:gravity 是设置该view里面的内容相对于该view的位置,例如设置button里面的text相对于view的靠左,居中等位置。(也可以在Layout布局属性中添加,设置Layout中组件的位置)

android:layout_gravity 是用来设置该view相对与view的位置,例如设置button在layout里面的相对位置:屏幕居中,水平居中等。
 
即android:gravity用于设置View中内容相对于View组件的对齐方式,而android:layout_gravity用于设置View组件相对于Container的对齐方式。
 
说的再直白点,就是android:gravity只对该组件内的东西有效,android:layout_gravity只对组件自身有效

 android:layout_gravity 只在 LinearLayout 和 FrameLayout 中有效: 

①对于 LinearLayout :

当 android:orientation="vertical"  时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。

当 android:orientation="horizontal" 时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。

②对于 FrameLayout :
任意android:layout_gravity属性都有效,可以非常方便实现对组件的布局。
 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。