Размещение изображения 16x9 в верхней части окна приложения (макет ограничений) (android studio) - PullRequest
0 голосов
/ 25 апреля 2020

У меня есть несколько изображений размером 16x9, которые я хочу использовать, как и изображения с обложки из Facebook. что-то вроде этого:

enter image description here

идея заключается в том, что я хочу, чтобы он был зафиксирован в верхней части без изменения его отношения

I попробовал это с помощью макета ограничения, но в зависимости от ширины экрана он меняет размер и соотношение. Я также хочу добавить текст и еще одну картинку поверх него.

1 Ответ

1 голос
/ 25 апреля 2020

Вы можете использовать app:layout_constraintDimensionRatio="H,16:9", чтобы высота регулировалась в соответствии с шириной, поэтому при изменении ширины экрана от устройства к другому высота всегда будет равна 9, а отношение ширины

<?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"
android:layout_width="match_parent"
android:layout_height="match_parent">

<ImageView
    android:id="@+id/cover"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:background="#0000FF"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintDimensionRatio="H,16:9" /> 
<!-- here you can add other views below -->
<TextView
    app:layout_constraintTop_toBottomOf="@id/cover"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    android:layout_marginTop="16dp"
    android:text="Text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>
</androidx.constraintlayout.widget.ConstraintLayout>
...