ConstraintLayout внутри ScrollView, constraintHeight_percent прерывает прокрутку - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть такой макет XML с ScrollView и только дочерний ConstraintLayout внутри него.Тогда у меня есть несколько дочерних представлений внутри этого ConstraintLayout, обычно с содержимым переноса.Но я хочу, чтобы одно из этих дочерних представлений в Constrain Layout заняло 80% экрана, поэтому я попытался использовать app: layout_constraintHeight_percent , но оно нарушает прокрутку.Кажется, что представление действительно имеет 80% высоты, но тогда оставшееся содержимое занимает всего лишь 20%, и оно соответствует высоте экрана, а другие представления ниже моего Пользовательского просмотра игнорируются.

<ConstraintLayout>
<ScrollView
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_margin="0dp"
        android:fillViewport="true"

        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintBottom_toBottomOf="parent">

        <android.support.constraint.ConstraintLayout
            android:id="@+id/calendarBackgroundLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

        <!-- child views with wrap content --> 

        <com.mydomain.CustomView
                android:id="@+id/myCustomView"
                android:layout_width="0dp"
                android:layout_height="0dp"

                android:layout_marginTop="8dp"
                android:layout_marginStart="16dp"
                android:layout_marginEnd="16dp"

                app:layout_constraintHeight_percent="0.8"
                app:layout_constraintDimensionRatio="h,5:8"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintTop_toBottomOf="@id/view_above_this" />

        <!-- additional child views with wrap content --> 
</ConstraintLayout>
</ScrollView>
</ConstraintLayout>
...