android 中的 layout_gravity 和 gravity 的区别:
运用到 gravity的情况:
1)设置Button里面 的text 靠右: android:gravity="right"
2)设置 LinearLayout中的Button 靠右显示: android:gravity="right"
也就是说A是父控件,B是子控件,想让B相对于A 的位置调整,那么就在父控件中用属性 gravity。
运用到 layout_gravity的情况:
在LinearLayout里面有个Button,当你想只改变Button的属性达到效果:Button位于LinearLayout的右下角,
那么你这个时候在Button里面增加的属性值就是: android:layout_gravity="right|bottom"
layout_gravity失效的原因:
l
ayout_gravity要依赖于父控件里面的属性,
如上面的例子,LinearLayout中有个Button:
1)如果LinearLayout中的 android:orientation="horizontal",那么也就是说在LinearLayout中子
控件
就是以水平
方向来安放的,
这个由LinearLayout来控制;
2) 你想在Button中改变Button相对于
LinearLayout的位置,只能改变其上下位置,而不能改变水平方向的位置,
即 android:layout_gravity="" (top,bottom都可以)(left,
right不可以)
同理知,当LinearLayout设置为vertical时,
Button的 layout_gravity 只能设置水平方向的属性。