ConstrainLayout相关用法

自从constraintlayout出来后,我就很少使用其他的布局了,主要原因除了它的layout和渲染效率提升以外,它太灵活了,极其少的情景下实现不了需求。

基本用法

以下图为例
ConstrainLayout相关用法_第1张图片
8D2DBDCA-4901-424E-B2EF-8A7176F1A3F6.png

整个布局只有一个层级。
相关约束(上/下/左/右)

         app:layout_constraintLeft_toLeftOf="xx"
         app:layout_constraintTop_toTopOf="xx"
         app:layout_constraintTop_toBottomOf="xx"
         app:layout_constraintBottom_toTopOf="@+id/xx"
         app:layout_constraintRight_toRightOf="xx"   
         app:layout_constraintBaseline_toBaselineOf="xx"      
  • guildeline的用法
    ui设计一般以375 x 750dp为设计屏幕尺寸。但是android屏幕众多,不能以dp为单位进行布局实现,这时候以guideline实现某些布局可能更适合。
    下面是它的一种典型用法

控件A和控件B居中对齐

ConstrainLayout相关用法_第2张图片
6D75BE2D-D5FB-4270-B7D9-F19835B566E9.png


    

    


Baseline

ConstrainLayout相关用法_第3张图片
59F15527-122F-4BE4-BCF0-B3A9D560EA5F.png


    

    

layout_goneMarginBottom

这个属性要俩个图对比才明显,如下图


ConstrainLayout相关用法_第4张图片
4B097EB4-96B6-44EE-8F64-585F4C9BD9D9.png


    

    


控件B加上属性android:visibility="gone"后,效果如下


1C3D612D-C482-4601-AB3D-07095A181A55.png

(未完待续)

你可能感兴趣的:(ConstrainLayout相关用法)