2010-07-22 30 views

Respuesta

107

usa el atributo android:background en tu xml. La manera más fácil si desea aplicarlo a toda una actividad es ponerlo en la raíz de su diseño. Así que si usted tiene un RelativeLayout como el inicio de su XML, lo puso en aquí:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/rootRL" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/background"> 
</RelativeLayout> 
+6

Esto puede, por desgracia, causar algunos problemas ... seguro de que funcionará para su actividad principal, pero si se abre una nueva actividad con el mismo androide: Fondo = "@ estirable/fondo", tan pronto como sea Si gira el emulador en la mayoría de los casos, y en algunos dispositivos, se bloqueará con un error de "Falta memoria ..." si su bgImg es de alta resolución. @Sephy, ¿cómo manejarías este problema? – whyoz

13

puede establecer el "fondo de la imagen" a una actividad estableciendo android:background atributos XML como de seguidores:

(Aquí , por ejemplo, tomar un LinearLayout para una actividad y establecer una imagen de fondo para el diseño (es decir, indirectamente, a una actividad))

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout android:id="@+id/LinearLayout01" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       xmlns:android="http://schemas.android.com/apk/res/android" 
       android:background="@drawable/icon"> 
</LinearLayout> 
+1

Me he dado cuenta de que hacer esto funciona bien para un LinearLayout, pero para RelativeLayouts, obtengo errores OOM. He leído muchas publicaciones de DecodeBitmap o layout.invalidate(), o publicaciones de Bitmap.recycle, etc. ¿Cómo persistirías una imagen como fondo de la aplicación usando RelativeLayouts? ¿Debo almacenar en caché cualquier imagen que aparecerá en más de una actividad? cual es la mejor practica? – whyoz

0

y no se olvide de limpiar su proyecto después de escribir estas líneas `ll una obtener una error en su archivo xml hasta que Has limpiado tu proyecto en eclipse: Proyecto-> Limpiar ...

2

Coloca la imagen en la carpeta dibujable. la carpeta dibujable está en res. dibujable tener 5 variantes dibujable-IPAP dibujable-LDPI dibujable-mdpi dibujable-xhdpi dibujable-xxhdpi

+0

¿Qué carpeta tenemos que usar? @Jesvin – jdyg

1

Hoy en día tenemos que utilizar match_parent:

<?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:orientation="vertical" 
    android:background="@drawable/background"> 
</RelativeLayout> 

enter image description here

1

podemos fácilmente coloque la imagen de fondo en PercentFrameLayout utilizando ImageView. Tenemos que establecer el valor de atributo scaleType = "fitXY" y en primer plano también podemos mostrar otras vistas como vista de texto o botón.

<android.support.percent.PercentFrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     > 
     <ImageView 
      android:src="@drawable/logo" 
      android:id="@+id/im1" 
      android:scaleType="fitXY" 
      android:layout_height="match_parent" 
      android:layout_width="match_parent"/> 
<EditText android:layout_gravity="center_horizontal" 
     android:hint="Enter Username" 
     android:id="@+id/et1" 
     android:layout_height="wrap_content" 
     app:layout_widthPercent="50%" 
     app:layout_marginTopPercent="30%" 
     /> 
<Button 
    android:layout_gravity="center_horizontal" 
    android:text="Login" 
    android:id="@+id/b1" 
    android:layout_height="wrap_content" 
    app:layout_widthPercent="50%" 
    app:layout_marginTopPercent="40%"/> 
</android.support.percent.PercentFrameLayout> 
Cuestiones relacionadas