Я столкнулся с проблемой при разработке фрагмента с ConstraintLayout
. Я хочу, чтобы два представления внутри фрагмента располагались друг над другом, причем вид сверху был ограничен соотношением 4: 3, а нижний - заполнял остальную часть доступного пространства. Итак, я создал следующий макет, ожидая желаемого поведения:
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/view_top"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/view_bottom"
app:layout_constraintDimensionRatio="H,4:3"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/view_bottom"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/view_top" />
</ConstraintLayout>
Однако этот макет не дает желаемого эффекта, а вместо этого оставляет промежутки между видами, а также сверху и снизу всего макета:
Почему соотношение применяется к обоим представлениям? Есть ли способ обойти это поведение и ограничить только вид сверху соотношением 4: 3?