ConstraintLayout⽤法全解析
*本篇⽂章已授权 guolin_blog (郭霖)独家发布
本⽂是基于constraint-layout:1.1.2
⼀、前⾔
在以前,android是使⽤布局如LinearLayout 、RelativeLayout等来构建页⾯,但这些布局使⽤起来很⿇烦,并且经常需要⼀层⼀层嵌套,写⼀个简单的页⾯就需要费很⼤的劲。所以在16年I/O⼤会上,google发布了全新的布局-ConstraintLayout,其他布局和ConstraintLayout⽐起来,根本就没有存在的必要了...
ConstraintLayout具有以下优势:
1. 较⾼的性能优势。
布局嵌套层次越⾼,性能开销越⼤。⽽使⽤ConstraintLayout,经常就⼀层嵌套就搞定了,所以其性能要好很多。
详细的性能分析可参见:解析ConstraintLayout的性能优势
2. 完美的屏幕适配
ConstraintLayout的⼤⼩、距离都可以使⽤⽐例来设置,所以其适配性更好。
3. 书写简单
4. 可视化编辑。
margin属性怎么用ConstraintLayout也有⼗分⽅便完善的可视化编辑器,不⽤写xml也基本上能实现⼤部分功能。但个⼈还是⽐较喜欢写xml,所以本篇⽂章主要介绍如何使⽤代码控制。如果想看如何使⽤可视化编辑器,可以参考郭霖⼤神的这篇⽂章
引⼊:api 'com.straint:constraint-layout:1.1.2'
⼆、ConstraintLayout
1. 定位位置
确定位置的属性提供了下⾯13个属性,其实本质上都是⼀样的,看名字应该基本上都知道怎么⽤了(就是哪⼀条边和哪⼀条边对齐)
layout_constraintLeft_toLeftOf
layout_constraintLeft_toRightOf
layout_constraintRight_toLeftOf
layout_constraintRight_toRightOf
layout_constraintTop_toTopOf
layout_constraintTop_toBottomOf
layout_constraintBottom_toTopOf
layout_constraintBottom_toBottomOf
layout_constraintBaseline_toBaselineOf
可以看出,b设为gone之后,他的宽、⾼、margin都失效了,变为⼀个点了,但它的constrain还⽣效,位于指定的位置。c还是可以继续以他为

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。