Как установить размеры изображения

Я делаю музыкальный проигрыватель в студии Android, и я хотел бы сделать что-то вроде этого

Вот уродливое изображение того, что я пытаюсь сделать

Черный прямоугольник — это телефон. Я уже сделал желтую часть, и теперь мне нужно настроить изображение как нарисованное, но я не понимаю, какие свойства мне нужно ввести.

Вот код, который я сделал:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<include
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    layout="@layout/song"
    android:layout_gravity="top" />

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/img_album_cover"
    android:layout_gravity="center" />

<include
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    layout="@layout/song_playback_buttons"
    android:layout_gravity="bottom"/>

</LinearLayout>

Заранее спасибо и извините за мой плохой английский (я итальянец).


person Community    schedule 08.03.2016    source источник


Ответы (1)


Во-первых, вы захотите, чтобы он заполнил пространство между верхним и нижним макетами, поэтому сделайте ширину/высоту ImageView равной fill_parent.

Затем вы также захотите присвоить ему android:layout_weight="1", чтобы он не выталкивал нижний макет за пределы экрана.

Теперь для фактического изображения вам нужно добавить android:scaleType="centerCrop" в ImageView. Это приведет к масштабированию исходного изображения (от центра с сохранением пропорций), чтобы ширина/высота изображения заполнили или вышли за границы представления.

Редактировать: вы также можете удалить все атрибуты layout_gravity, так как layout_weight сделает их бесполезными.

person Cruceo    schedule 08.03.2016
comment
Вау, спасибо, это было очень полезно! Теперь вроде работает отлично! - person ; 09.03.2016