Android 线性布局、相对布局和绝对布局之间有什么区别?

Android 线性布局、相对布局和绝对布局之间有什么区别?,android,android-layout,android-linearlayout,android-relativelayout,android-framelayout,Android,Android Layout,Android Linearlayout,Android Relativelayout,Android Framelayout,我对线性布局、相对布局和绝对布局之间的区别感到困惑。 有人能告诉我他们之间的确切区别吗 LinearLayout意味着您可以逐个对齐视图(垂直/水平) RelativeLayout是指基于其父视图和其他视图的视图关系 ConstraintLayout与RelativeLayout类似,它使用关系来定位和调整小部件的大小,但具有额外的灵活性,更易于在布局编辑器中使用 WebView加载html、静态或动态页面 FrameLayout要将子对象一个接一个地加载,就像框架内的卡片一样,我们可以将一个放

我对线性布局、相对布局和绝对布局之间的区别感到困惑。
有人能告诉我他们之间的确切区别吗

LinearLayout
意味着您可以逐个对齐视图(垂直/水平)

RelativeLayout
是指基于其父视图和其他视图的视图关系

ConstraintLayout
与RelativeLayout类似,它使用关系来定位和调整小部件的大小,但具有额外的灵活性,更易于在布局编辑器中使用

WebView
加载html、静态或动态页面

FrameLayout
要将子对象一个接一个地加载,就像框架内的卡片一样,我们可以将一个放置在另一个上面或框架内的任何位置

已弃用-
绝对布局
意味着您必须给出视图的确切位置

有关更多信息,请检查此地址

定义:
  • 框架布局:设计用于屏蔽屏幕上显示单个项目的区域
  • 线性布局:在一列或一行中排列其子级的布局
  • 相对布局:此布局是在相对位置显示子视图的视图组
  • 表布局:将其子项排列成行和列的布局

更多信息:

FrameLayout设计用于在屏幕上显示单个项目的区域。通常,FrameLayout应用于保存单个子视图,因为在子视图不重叠的情况下,很难以可扩展到不同屏幕大小的方式组织子视图。但是,您可以使用
android:layout\u gravity
属性将多个子项添加到框架布局中,并通过为每个子项指定重力来控制它们在框架布局中的位置

子视图绘制在堆栈中,最新添加的子视图位于顶部。FrameLayout的大小是其最大子级(加上填充)的大小,无论是否可见(如果FrameLayout的父级允许)

RelativeLayout是设计用户界面的一个非常强大的实用工具,因为它可以消除嵌套的视图组并保持布局层次结构平坦,从而提高性能。如果您发现自己使用了多个嵌套的LinearLayout组,则可以将其替换为单个RelativeLayout

(当前文档)

TableLayout由许多
TableRow
对象组成,每个对象定义一行(实际上,您可以有其他子对象,下面将对此进行解释)。TableLayout容器不显示其行、列或单元格的边框线。每行有零个或多个单元格;每个单元可以容纳一个视图对象。该表的列数与单元格最多的行数相同。表格可以使单元格空着。单元格可以跨列,就像在HTML中一样

列的宽度由该列中单元格最宽的行定义



注意:不推荐使用绝对布局。

线性布局:将其子级组织为单个水平或垂直行的布局。如果窗口长度超过屏幕长度,它会创建一个滚动条。这意味着您可以逐个对齐视图(垂直/水平)

RelativeLayout:这使您能够指定子对象相对于彼此(子对象A位于子对象B的左侧)或相对于父对象(与父对象的顶部对齐)的位置。它是基于父母的观点和其他观点的关系

WebView:加载html、静态或动态页面


有关更多信息,请参阅此链接:

此处的精彩解释:


线性布局水平或垂直并排排列元素

RelativeLayout帮助您根据特定规则排列UI元素。您可以指定如下规则:将其与父元素的左边缘对齐,将其放置在此元素的左/右等

AbsoluteLayout用于绝对定位,即您可以指定视图的确切坐标

框架布局允许沿Z轴放置视图。这意味着您可以将视图元素一个堆叠在另一个之上


线性布局在线性布局中,视图以垂直或水平方向组织

RelativeLayout-RelativeLayout比LinearLayout复杂得多,因此提供了更多的功能。顾名思义,视图是相对放置的

FrameLayout-它作为单个对象运行,其子视图彼此重叠。FrameLayout根据最大的子元素采用的大小


协调器布局-这是Android支持库中引入的最强大的视图组。它的行为类似于框架布局,并且有许多功能可以在其子视图之间进行协调,例如,浮动按钮和snackbar,带有可滚动视图的工具栏。

也检查此链接。。绝对布局不推荐@Fry我在两年前回答了这个问题。请阅读问题。显然,
AbsoluteLayout
因某种原因被弃用;如果内容不合适,它会随机抛出一些东西。最好使用
线性布局
,并将其所有填充设置为
0