前言
在Android開發中,我們通常是手寫布局,很少會用拖動來寫布局,雖然ConstraintLayout在I/O上以拖動來展現了各種功能,我估計在以后開發中,程序員還是習慣手擼代碼。
我自己試著拖著用了一下,用得不是很明白 ,而且用起來效果不是很好。
那么
直接上手擼了一下~~~
其實很簡單


Button1:app:layout_constraintBottom_toTopOf="@id/iv_head"
我們把這個屬性拆開來看,constraintBottom指的本身的底部,即Button1的頂部,toTopOf是指ImageView的頂部,那么這句話的意思就是
Aligns the bottom of the desired view to the top of another.(官方原文)
翻譯一下就是Button1的底部要和ImageView的頂部對齊
Button1 app:layout_constraintRight_toLeftOf="@id/iv_head"
根據上面的規則我們就知道Button1的右邊要和ImageView的左邊對齊。
其實很簡單就是說兩個View的某個方位要對齊
沒了,就這么簡單,其它屬性可以舉一反三,它比RelativeLayout控制起來更加得以就手。
- layout_constraintTop_toTopOf?—?Align the top of the desired view to the top of another.
- layout_constraintTop_toBottomOf?—?Align the top of the desired view to the bottom of another.
- layout_constraintBottom_toTopOf?—?Align the bottom of the desired view to the top of another.
- layout_constraintBottom_toBottomOf?—?Align the bottom of the desired view to the bottom of another.
- layout_constraintLeft_toTopOf?—?Align the left of the desired view to the top of another.
- layout_constraintLeft_toBottomOf?—?Align the left of the desired view to the bottom of another.
- layout_constraintLeft_toLeftOf?—?Align the left of the desired view to the left of another.
- layout_constraintLeft_toRightOf?—?Align the left of the desired view to the right of another.
- layout_constraintRight_toTopOf?—?Align the right of the desired view to the top of another.
- layout_constraintRight_toBottomOf?—?Align the right of the desired view to the bottom of another.
- layout_constraintRight_toLeftOf?—?Align the right of the desired view to the left of another.
- layout_constraintRight_toRightOf?—?Align the right of the desired view to the right of another.
- If desired, attributes supporting start and end are also available in place of left and right alignment.
到此,你已經掌握了一大半的ConstraintLayout知識點
還有其它的一些屬性
app:layout_constraintStart_toEndOf
意思就是Button的開始部分(從左往右看,開始部分就是Button的左邊)與ImageView的右邊是對齊的。
app:layout_constraintStart_toStartOf
這個就是說Button的左邊與ImageView的左邊是對齊的
不知道為什么上面已經出的屬性能夠滿足布局需要了,為什么還要再出start和end的。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。
注:相關教程知識閱讀請移步到Android開發頻道。