什么是ConstraintLayout Optimizer?

时间:2018-04-12 17:17:03

标签: android android-layout android-constraintlayout

Google于2018年3月22日发布了 ConstraintLayout 1.1.0 beta 6 。它有一个名为 Optimizer 的新约束。 https://developer.android.com/reference/android/support/constraint/ConstraintLayout.html#Optimizer上的Optimizer文档未提及何时使用以及使用它的原因。有人可以对它的用法有所了解。

1 个答案:

答案 0 :(得分:0)

Constraint Layout 1.1添加了一些新的优化方法,可以加快布局速度。这些优化作为单独的过程运行,并尝试减少布局视图所需的约束数量。

通常,它们通过在布局中查找常量并将其简化来工作。

有一个名为layout_optimizationLevel的新标签,用于配置优化级别。可以将其设置为以下内容:

  • 障碍找出障碍的位置,并用更简单的约束代替
  • 直接优化直接连接到固定元素的元素,例如屏幕侧面或辅助线,并继续优化直接连接到固定元素的任何元素
  • 标准是默认的优化级别,其中包括障碍直接
  • 尺寸目前处于实验阶段,可能会在某些布局上引起问题issues-它通过计算尺寸来优化布局过程
  • 目前处于实验阶段,可以弄清楚如何布置尺寸固定的元素链。

如果要尝试实验性的优化尺寸和链,可以在ConstraintLayout上启用它们,

<android.support.constraint.ConstraintLayout 
    app:layout_optimizationLevel="standard|dimensions|chains"
  

注意:要清除整个概念,您必须执行此操作。