Android 约束布局定位 1 item below other

Android constraint layout positioning 1 item below other

我有一个约束布局,布局看起来像这样 -

如您所见,项目 Pasta10:10 上下对齐。我的布局是这样的 -

<?xml version="1.0" encoding="utf-8"?>
<com.google.android.material.card.MaterialCardView 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:id="@+id/food_item"
    style="@style/cardViewStyle"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginBottom="@dimen/margin_16dp">

        <com.google.android.material.textview.MaterialTextView
            android:id="@+id/food_name_label"
            style="@style/cardViewTextTitle"
            android:text="@string/food_name"
            app:layout_constraintBaseline_toBaselineOf="@+id/food_name_value"
            app:layout_constraintStart_toStartOf="parent" />

        <com.google.android.material.textview.MaterialTextView
            android:id="@+id/food_name_value"
            style="@style/cardViewTextSubTitle"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.39"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            tools:text="Pasta" />

        <com.google.android.material.textview.MaterialTextView
            android:id="@+id/food_intake_label"
            style="@style/cardViewTextTitle"
            android:text="@string/food_intake_time"
            app:layout_constraintBaseline_toBaselineOf="@+id/food_intake_value"
            app:layout_constraintStart_toStartOf="parent" />

        <com.google.android.material.textview.MaterialTextView
            android:id="@+id/food_intake_value"
            style="@style/cardViewTextSubTitle"
            app:layout_constraintStart_toEndOf="@id/food_intake_label"
            app:layout_constraintTop_toBottomOf="@id/food_name_value"
            tools:text="10:10" />
    </androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.card.MaterialCardView>

我有 ID food_name_value 水平对齐父项的开始和结束。

我的问题是我是否将 food_name_valuefood_intake_value 正确对齐,因为标签 Intake Time 比标签 Name 长得多或者是什么对我来说最好的对齐方式是什么?

您当然需要 Barrier here, with barrierDirection="end" and constraint_referenced_ids="food_name_label,food_intake_label", Then align your food_name_value, food_intake_value with this barrier. Perfect explanation can be found at