本文咱們來介紹障礙線(Barrier)的使用,日常在開發中用的相對要少一些,可是在須要時會很是方便。android
它的做用是將多個元素放到這個障礙線裏面使時,其中的任何元素的大小或位置變化時都會使它的位置進行改變。app
能夠理解成一面牆,"牆"裏面任何元素的位置或大小改變時都會致使它的改變,從而保證全部的元素都在"牆"裏面。佈局
下面咱們來舉例進行說明,會更加直觀。3d
首先,咱們先建立兩個元素:
code
接下來,咱們來建立一條垂直的Barrier:
xml
建立後,咱們把這兩個View拖到這個Barrier裏面:
blog
注意:這裏將View拖進去並非真正建立了層級關係,咱們看代碼能夠知道,僅僅這個Barrier引用了兩個View的ID:開發
<android.support.constraint.Barrier android:id="@+id/barrier" android:layout_width="wrap_content" android:layout_height="wrap_content" app:barrierDirection="left" app:constraint_referenced_ids="button,textView" tools:layout_editor_absoluteX="104dp" />
建立完成後咱們來調整其裏面的各個View的大小和位置就能夠理解它的做用了:get
Barrier特別在複雜的頁面佈局的時候很是有用,不須要建立一個容器來放置這些子View來實現這樣的功能了,這也是咱們使用ConstraintLayout的初衷,保證層級的簡單和高效。博客
下一篇:Android開發 - 掌握ConstraintLayout(九)分組(Group),咱們將介紹分組(Group)的使用。
若有更多疑問,請參考個人其它Android相關博客:個人博客地址