ConstraintLayout 简介:
ConstraintLayout是Android Studio 2.2中主要的新增功能之一,它可以在不嵌套任何布局的情况下构建复杂的布局.
它与RelativeLayout非常相似,所有的view都依赖于相邻控件的相对关系.
而ConstraintLayout比RelativeLayout更加灵活,在AndroidStudio中进行拖拽即可完成布局.
以往 我们都是通过嵌套或者使用RelativeLayout来完成复杂的布局,但是通过使用Systrace大量测试表明:嵌套式层次结构和 RelativeLayout(会对其每个子对象重复测量两次)的特性导致性能低下
- ConstraintLayout和传统嵌套式层次布局写法上的差异:
如上图布局,通过传统嵌套方式来完成,布局元素层次结构如下:
接着使用 ConstraintLayout 来构建相同的布局
如上所示,第一种方式使用了多个布局容器进行嵌套,尽管这种类型的视图层次结构有改进的空间,但几乎是不可避免需要嵌套来完