2013-03-10 3 views
1

Я хотел бы отобразить изображение в качестве фона для своей деятельности, но хотел бы, чтобы оно заполнилось на экране без изменения соотношения сторон изображения (что-то вроде this) ,Заполнение фонового изображения на экране без изменения формата изображения

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

Как мне это сделать? Я даже пытался определить фоновое изображение в своем собственном XML-файле, но это все еще не сработало.

ответ

4

Если вы используете RelativeLayout, вы можете поместить ImageView, а не заполнять все макеты, а остальное над ним. Что-то вроде этого:

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

<ImageView 
    android:id="@+id/background" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:scaleType="centerCrop" 
    android:src="@drawable/background" /> 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    // Your full layout 
</LinearLayout> 

</RelativeLayout> 
+0

Я фактически использовал его как часть макета, и он работал красиво. Я думал, что это отобразит изображение как часть макета, а не как фон, но это не так. Благодаря! – Malfunction

0

AFAIK единственным решением является решение с ImageView, о котором вы упомянули. Почему это не подходит для вас? Вы также можете использовать метод Bitmap.createBitmap() для изменения размера растрового изображения желаемого размера.

Смежные вопросы