constraintLayout_屏障约束使用
系统UI预览

官方解释:


根据barrierDirection所设置的属性,屏障线的位置将取决于屏障内的控件中对应指定属性值的最值(比如说这里屏障中包含button2,button3,并在右侧窗口中的barrierDirection设置了关键属性为end,那么屏障线的位置将取决于button2,button3中水平方向上最为靠右的控件的右边缘线)
result example:


example xml code:(base androidx)
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/tv_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:textSize="24sp"
app:layout_constraintBottom_toTopOf="@+id/tv_password"
app:layout_constraintStart_toStartOf="@+id/tv_password"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_chainStyle="packed"
tools:text="E-mail Addresse" />
<EditText
android:id="@+id/et_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:ems="10"
android:inputType="textEmailAddress"
android:text="me@gmail.com"
app:layout_constraintBaseline_toBaselineOf="@+id/tv_email"
app:layout_constraintStart_toEndOf="@+id/barrier" />
<TextView
android:id="@+id/tv_password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:text="Passwort"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_email" />
<EditText
android:id="@+id/et_password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:ems="10"
android:inputType="textPassword"
android:text="2321321"
app:layout_constraintBaseline_toBaselineOf="@+id/tv_password"
app:layout_constraintStart_toEndOf="@+id/barrier" />
<androidx.constraintlayout.widget.Barrier
android:id="@+id/barrier"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:barrierDirection="right"
app:constraint_referenced_ids="tv_email,tv_password"
tools:layout_editor_absoluteX="411dp" />
</androidx.constraintlayout.widget.ConstraintLayout>

浙公网安备 33010602011771号