#android #android-constraintlayout
#Android #android-constraintlayout
Вопрос:
У меня есть настройка ImageView следующим образом
<ImageView
android:layout_width="0dp"
android:layout_height="@dimen/video_file_item_image_height"
android:background="@color/black"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="16:9"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
с
implementation 'androidx.constraintlayout:constraintlayout:2.0.1'
это выглядит так
но с
implementation 'androidx.constraintlayout:constraintlayout:2.0.2'
ImageView не отображается
Обновить
Версия 2.0.3 это все еще не исправлено, оно работает только в том случае, если вы не устанавливаете dp для высоты (например, вы устанавливаете wrap_content
вместо этого) и app:layout_constraintEnd_toEndOf=
также требуется, но тогда это работает по-другому, мне нужно установить высоту в DPI! Он работал так в 2.0.1 и app:layout_constraintEnd_toEndOf=
не требовал установки
Комментарии:
1. Что показывает инспектор компоновки Android Studio, это размер
ImageView
?2. @CommonsWare ширина 0, высота 131
3. Что произойдет, если вы используете
"W,16:9"
для значения?4. @BenP. Я уже пробовал, но ничего не меняется
Ответ №1:
Похоже, это известная проблема: https://issuetracker.google.com/issues/170313444
Рекомендуемый обходной путь — добавить это в свой ConstraintLayout
тег:
app:layout_optimizationLevel="cache_measures"
Комментарии:
1. У меня также есть аналогичная проблема с приложением: layout_constraintDimensionRatio=»h, 2: 3″ на Android TV, где портретные изображения обрезаются снизу. Проблема обнаружилась после того, как я обновил макет ограничений до 2.0.1, раньше он работал на 1.1.3. Приведенное выше решение также мне не помогает. Удивительно, но тот же макет работает на мобильных устройствах.