Android中 layout_gravity和gravity的区别
发布日期:2021-05-14 09:14:26 浏览次数:17 分类:精选文章

本文共 746 字,大约阅读时间需要 2 分钟。

gravity和layout_gravity是Android布局中的两个常用属性,但它们的作用有显著区别,理解这些区别可以帮助开发者更好地设计布局。

gravity属性主要用于设置自身内部元素的对齐方式。例如,对于一个TextView,gravity="center"会使得内部的文字居中显示。如果是ViewGroup组件如LinearLayout,则gravity属性会影响它内部View组件的布局。值得注意的是,如果在设置gravity属性之前,Child View的宽度和高度没有被设置为fixed(匹配父容器的尺寸),则gravity属性可能无法生效,因为内容可能会被布局框包裹,导致效果不明显。

在使用gravity属性之前,代码和效果图如下:

添加gravity="center"后代码变为:

效果图显示,TextView内的元素已经居中,gravity属性有效地将View内容居中显示。

对于ViewGroup(如LinearLayout),gravity属性会影响内部View的布局。例如,在LinearLayout中添加gravity="center":

这会使得 goodwill inside the组件居中显示。

layout_gravity属性则为各个组件设置其在父容器中的对齐方式。例如,TextView的layout_gravity属性表示它相对于父容器的对齐方式。代码如下:

效果图显示,TextView仍然保持在屏幕中,而不是居中显示。这与LinearLayout的定位方向有关。当orientation="vertical"时,组件会居中显示。

上一篇:Java面向对象 接口(interface)的详解
下一篇:Java面向对象 抽象类与抽象方法的使用(关键字abstract)

发表评论

最新留言

表示我来过!
[***.240.166.169]2025年05月04日 17时33分52秒