最好的线性布局,相对布局和最新的约束布局



我对此有很多疑问。我擅长使用LinearLayout,RelativeLayout或ConstraintLayout,想知道最好。如果有些人有理由使用其中之一。

一些问题:

  1. 我认为LinearLayout将添加一个节点层次结构,这将比RelativeLayout或ContraintLayout花费更多的时间来渲染,对吗?
  2. 为什么安卓正在考虑ContraintLayout使用RelativeLayoutLinearLayout?即使我可以在LinearLayoutRelativeLayout中制作相同的布局

我认为LinearLayout将添加一个节点层次结构,这将比RelativeLayout或ContraintLayout花费更多的时间来渲染,对吗?

嵌套LinearLayout构件的渲染速度可能较慢。不能保证渲染速度会变慢。使用嵌套权重是获取一组缓慢的嵌套LinearLayout小部件的一种已知方法。

为什么 android 考虑使用 ContraintLayout 而不是 RelativeLayout 和 LinearLayout?

ConstraintLayout处理的方案比LinearLayoutRelativeLayout多。ConstraintLayoutIDE 通过拖放支持比RelativeLayout更容易

即使我可以在线性布局或相对布局中制作相同的布局

有多种方案很难在LinearLayoutRelativeLayout中实现,但ConstraintLayout可以轻松处理,例如:

  • 圆形定位

  • ConstraintLayout本身的最小和最大大小(以帮助wrap_content避免过小或过大(

  • 让孩子保持特定的纵横比

  • 实现某些种类的链

  • 将孩子锚定在人为的基于规则的线路上,例如GuidelineBarrier

最新更新