我知道我们可以为android设置以下值:gravity和android:layout_gravity财产:

居中中心_垂直center_horizontal等。

但我对这两者都感到困惑。

android:gravity和android:layout_gravity的用法有什么区别?


当前回答

Gravity和layout_Gravity都是XML属性。

android:gravity属性用于排列视图中内容的位置(例如Button小部件中的文本)。

android:layout_gravity用于安排整个视图相对于其容器的位置。

有关详细信息,请参阅此链接。

其他回答

我只是想在这里添加我自己的解释-来自iOS的背景,这是我如何在iOS术语中内化两者的:

布局重力会影响您在超级视图中的位置。重力会影响子视图在您体内的位置。

另一种说法是,布局重力定位你自己,而重力定位你的孩子。

他们的名字可以帮助您:

android:gravity设置其使用的视图的内容(即其子视图)的重力。android:layout_gravity设置视图或布局相对于其父对象的重力。

这里有一个例子。

查看图像以了解重力

两者的基本区别在于-

android:gravity用于视图的子元素。

android:layoutgravity用于相对于父视图的此元素。

从我可以收集到的layout_gravity是该视图在其父视图中的重力,而重力是该视图中的子视图的重力。

我认为这是正确的,但找到答案的最佳方法是四处游玩。