kmb64
kmb64

Reputation: 1513

Android background Image to fill screen

How do I get my relative layout to display my image view like this:

enter image description here

Instead of this?:

enter image description here

I want my layout to display as much of the image as it can and crop the outsides of the image, like when you're setting desktop background image to "Fill" in windows:

enter image description here

My xml layout so far:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" android:fitsSystemWindows="true" android:alwaysDrawnWithCache="false">

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true" android:src="@drawable/background_race_light"/>

    <LinearLayout
        android:id="@+id/linearLayout1"
        style="@style/SessionResumeBar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/home_resumeSessionBar_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Medium Text"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <Button
            android:id="@+id/home_resumeSessionBar_buttonResume"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Resume" />
    </LinearLayout>





</RelativeLayout>

Upvotes: 35

Views: 52222

Answers (3)

jeet
jeet

Reputation: 29199

Set the ImageView layout parameters to match_parent and set scale type to an appropriate scale type which fulfills your needs:

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentLeft="true"
    android:scaleType="centerCrop"
    android:layout_alignParentTop="true" android:src="@drawable/background_race_light"/>

Upvotes: 5

Trikaldarshiii
Trikaldarshiii

Reputation: 11314

Set scalexy = true in ImageView

Upvotes: 0

Phobos
Phobos

Reputation: 9557

Add a scale type to your imageview. There are several types. The one you need is

android:scaleType="center"

This page will help explain all the different types.

Upvotes: 35

Related Questions