一、是什么
AndroidStudio一直都允许“手写XML代码”布局和“拖动控件”布局两种方式,但是“拖动控件”布局极其难用(实际开发中几乎没人在用),ConstraintLayout的出现让“拖动控件”布局有了实际使用的可能性。
允许你用较少的视图层级创建大且复杂的布局,它和RelativeLayout有点相似,但ConstraintLayout配合Android Studio’s Layout Editor一起使用会比RelativeLayout更灵活、简单。
二、使用方法
1、添加依赖
dependencies {
compile ‘com.android.support.constraint:constraint-layout:1.0.2’
}
2、至少要定义一个水平,一个垂直方向的约束。如果不定义任何约束,则控件默认绘制在左上角,每一个约束定义了该view沿水平方向轴或者垂直方向轴的位置。
三、优缺点及适用场景
1、适用于界面复杂的情况(嵌套很深时手写代码花费时间较长)
2、无需上下滑动翻页(内容高度不超过一屏,约束布局和ScrollView结合使用不方便)
参考:
https://developer.android.com/training/constraint-layout/
https://blog.youkuaiyun.com/guolin_blog/article/details/53122387
https://github.com/googlesamples/android-ConstraintLayoutExamples