kmb64 kmb64 - 1 month ago 14
Android Question

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>

Answer

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.

Comments