Android 线性布局和相对布局的区别是什么?
线性布局和相对布局的区别是什么?线性布局将每个孩子一个接一个地水平或垂直地排成一行。通过相对布局,您可以为每个子级提供一个LayoutParam,该参数指定了相对于父级或相对于其他子级的确切位置。From 线性布局 LinearLayout将所有子项沿单个方向对齐(垂直或水平),具体取决于定义方向属性的方式 RelativeLayout RelativeLayout允许子视图指定它们相对于父视图或彼此的位置(由ID指定)Android 线性布局和相对布局的区别是什么?,android,layout,Android,Layout,线性布局和相对布局的区别是什么?线性布局将每个孩子一个接一个地水平或垂直地排成一行。通过相对布局,您可以为每个子级提供一个LayoutParam,该参数指定了相对于父级或相对于其他子级的确切位置。From 线性布局 LinearLayout将所有子项沿单个方向对齐(垂直或水平),具体取决于定义方向属性的方式 RelativeLayout RelativeLayout允许子视图指定它们相对于父视图或彼此的位置(由ID指定) 以下链接应直观地解释布局如何“直观地”工作 在窗口中添加一些组件,然后修
以下链接应直观地解释布局如何“直观地”工作
在窗口中添加一些组件,然后修改布局,看看会发生什么。这就是我了解每个组件的功能的方式。
线性布局::
- 在线性布局中,正如名称所示,所有元素都是 以线性方式显示
- 水平或垂直,并且此行为在中设置 android:orientation是节点的一个属性 线性布局
- 线性布局将每个孩子一个接一个地排成一行, 水平或垂直
相对布局::
- 在相对布局中,每个元素都相对其他元素排列自己 元素或父元素
- 当一个视图挨着另一个视图添加时,它很有用
- 使用相对布局,可以为每个子级提供一个 指定相对于父项或子项的确切位置 相对于其他孩子
- 视图在相对布局中是层叠的
优化::查看 视图越少越好:
布局的首要目标应该是使用尽可能少的视图。使用的视图越少,应用程序运行的速度就越快。视图嵌套过多会进一步降低应用程序的速度。
RelativeLayout层次结构通常比LinearLayout层次结构使用更少的视图和更平坦的树。使用LinearLayout,每次要更改视图的方向时都必须创建新的LinearLayout–创建其他视图和更嵌套的层次。因此,建议您首先对任何具有任何复杂性的布局使用RelativeLayout。这样做很可能会减少视图的数量和视图树的深度。
LinearLayout
功能之一是使用一个名为Weight的属性,应用程序可以使用Android:layout\u Weight
指定该属性。
此属性根据视图在屏幕上应占据的空间大小为视图指定“重要性”值
另一方面,
RelativeLayout
不支持权重,或者换句话说,RelativeLayout
不关注android:layout\u-weight
。这是LinearLayout.LayoutParams
的属性,而不是RelativeLayout.LayoutParams
在相对布局中,布局页面中的所有内容都与示例\u layout.xml页面中的其他内容相关
在线性布局的情况下,元素以线性格式显示android中线性布局和相对布局的区别在于,在线性布局中,“子元素”可以水平或垂直放置,但在相对布局中,子元素可以彼此相对距离放置。这是线性布局和相对布局之间的区别 区别很简单:在线性布局中,我们以线性方式(一个接一个)排列内容,而相对而言,我们可以将内容放置在屏幕上的任何位置 =>线性布局以列表形式排列。
其余部分在功能上相似。线性布局
RelativeLayout
比LinearLayout
更灵活,但是如果您对LinearLayout
有适当的了解,您也可以使用它。
对于LinearLayout
每个属性都有一个由开发人员硬编码的重要位置。
对于
RelativeLayout
您可以通过与其他属性关联来更改位置。详细说明您的答案Hi Murad。这是一个评论,不是真正的答案。而且,这个问题已经有了很多答案。除非有独特的解决方案向社区展示,否则请尽量避免提供额外的问题答案。最后,AndroidStudio将RelativeLayout归类为“遗留”布局,因此开发人员应该避免使用它,而支持ConstraintLayout,除非他们维护的是过时的遗留项目。亲切的问候。