【鏈?zhǔn)讲季帧緾onstraintLayout 使 View 緊貼在一起

當(dāng)在 ConstraintLayout 中添加約束,使兩個(gè) View 水平排布時(shí),如下:


xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <Button
        android:id="@+id/btn1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toLeftOf="@id/btn2"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        android:id="@+id/btn2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="World"
        app:layout_constraintLeft_toRightOf="@id/btn1"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

在默認(rèn)情況下,子 View 會(huì)均勻分布空余空間。如果想讓兩個(gè) View 挨在一起,或者分布在兩側(cè),則可以通過app:layout_constraintHorizontal_chainStyle(水平方向)app:layout_constraintVertical_chainStyle(豎直方向)屬性設(shè)置鏈?zhǔn)讲季值臉邮健?/p>

鏈?zhǔn)讲季?/h1>

ConstraintLayout 提供了 "鏈" 的功能,用于在布局中將多個(gè)視圖連接在一起,并控制它們的排列方式和空間分配。鏈?zhǔn)怯梢唤M視圖組成的,這些視圖通過約束連接在一起,并在水平或垂直方向上形成一個(gè)連續(xù)的布局。可以在鏈中設(shè)置視圖的排列方式,使其根據(jù)不同的需求進(jìn)行均勻分布、緊密排列或其他布局效果。

鏈?zhǔn)讲季值娜N樣式

  1. spread(默認(rèn)值):

    • 視圖在鏈中均勻分布,鏈中的所有視圖會(huì)占用可用的空間,并且彼此之間的間隔是相等的。
      適用于希望鏈中的視圖均勻分布且填滿整個(gè)可用空間的場(chǎng)景:
      app:layout_constraintHorizontal_chainStyle="spread"
    • spread
  1. spread_inside:

    • 視圖在鏈中均勻分布,但第一個(gè)視圖和最后一個(gè)視圖的邊緣與父布局的邊緣對(duì)齊,視圖之間的間隔是相等的。
      適用于希望鏈中的視圖均勻分布但保留兩端邊距的場(chǎng)景:
      app:layout_constraintHorizontal_chainStyle="spread_inside"
    • spread_inside
  1. packed:

    • 視圖在鏈中緊密排列,鏈中的所有視圖靠在一起,不均勻地分布在父布局中??梢赃x擇性地使用 layout_constraintHorizontal_bias 來(lái)調(diào)整視圖在鏈中的相對(duì)位置。
      適用于希望鏈中的視圖緊密排列在鏈中間或鏈的一側(cè)的場(chǎng)景:
      app:layout_constraintHorizontal_chainStyle="packed"
    • packed
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容