Home » Android » Android background Image to fill screen

Android background Image to fill screen

Posted by: admin April 23, 2020 Leave a comment

Questions:

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>
How to&Answers:

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.

Answer:

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"/>

Answer:

Set scalexy = true in ImageView