Android: как заставить ImageView заполнить экран - PullRequest
15 голосов
/ 10 февраля 2012

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

Я использую ImageView, однако он занимает около 70% экрана, оставляя пустое пространство внизу ...

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

Любая помощь будет принята с благодарностью! :)

Код в тегах ImageView моего файла макета:

android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:scaleType="centerCrop" 
android:adjustViewBounds="true" 
android:src="@drawable/image" 

Ответы [ 5 ]

47 голосов
/ 10 февраля 2012

// в вашем атрибуте xml Image как

android:scaleType="fitXY"

или // с помощью программы

imgview.setScaleType(ScaleType.FIT_XY);

Примечание: это относится к случаям, когда для изображения установлено значение android: src = "...", а не android: background = "...", поскольку фоны по умолчанию настроены на растяжение и подгонку на вид.

11 голосов
/ 27 октября 2015
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scaleType="centerCrop"
    android:adjustViewBounds="true"
    android:src="@drawable/image"

просто измените ширину и высоту макета, которые будут работать как с 'center', так и 'centercrop'

4 голосов
/ 10 февраля 2012

Используйте следующую строку в вашем изображении View xml code.

android:scaleType="fitXY"
0 голосов
/ 25 апреля 2016

Не забудьте удалить

android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"

из макетов в верхней части xml упражненияВ противном случае изображение будет иметь проблемы с заполнением всего экрана.

0 голосов
/ 10 февраля 2012

Вы можете использовать практически любой макет и просто установить фоновое изображение для вашего изображения.Затем просто сделайте родителем ширину и высоту.

или экземпляр, если вы хотите просто изображение, установите его для основного линейного макета

    <LinearLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
      android:orientation="horizontal"
      android:layout_height="fill_parent"
      android:background="@drawable/yourimage">
</LinearLayout>     
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...