Imagen de fondo de la actividad de Android

¿Cómo utilizo una imagen de fondo en un tema / estilo de actividad?

Si lo hago usando un color:

<style name="CustomTheme" parent="android:Theme.Light"> <item name="android:windowBackground">@color/custom_theme_color</item> </style> 

Funciona correctamente, pero si reemplazo la línea con:

 <item name="android:windowBackground">@drawable/splash_image</item> 

La imagen se muestra correctamente, pero todo el contenido se coloca en un pequeño bloque en la esquina superior izquierda de la pantalla. La sombra debajo de la barra de estado también está cortada o desordenada.

Estoy usando Mono para Android y la imagen es un png válido de nueve parches.

También no uso temas, por lo que en el diseño de la actividad que añadiría

 android:background="@drawable/splash_image" 

No utilizo temas ni nada, así que no estoy seguro de cómo afectará esto, pero establezco mi fondo como este:

 getWindow().setBackgroundDrawableResource(R.drawable.background_image); 

En la creacion

Necesitaba tener una imagen de bienvenida que parecía la actividad inicial de mi aplicación y se encontró con el mismo problema. Tuve buena suerte con windowContentOverlay en lugar de windowBackground. El dibujable apareció por debajo de la barra de estado en la misma posición exacta que un diseño real. Ha trabajado en Android 2.2, Android 3.0 y Android 4.1.

Este es mi estilo:

 <style name="SplashTheme" parent="android:style/Theme.Light"> <item name="android:windowNoTitle">true</item> <item name="android:windowContentOverlay">@drawable/splash</item> </style> 

Mi splash.xml dibujable imita mi encabezado de interfaz de usuario mediante layer-list:

 <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <!--- Background; tile is broken on Android 2.2 so just have super wide background that will get clipped --> <item> <bitmap android:gravity="top|left" android:src="@drawable/splash_background" /> </item> <!--- Icon left justified --> <item> <bitmap android:gravity="top|left" android:src="@drawable/header_icon" /> </item> <!--- Buttons/etc right justified --> <item> <bitmap android:gravity="top|right" android:src="@drawable/splash_buttons" /> </item> </layer-list> 

Creo que ActionBar también tiene algunas formas integradas para manejar esto, si su aplicación lo usa. La muestra MonoIO parece tener una imagen de lanzamiento.

Mi solución fue cambiar el androide: windowBackground a android: fondo.

 <?xml version="1.0" encoding="UTF-8" ?> <resources> <style name="Theme.Splash" parent="android:Theme"> <item name="android:background">@drawable/splash</item> <item name="android:windowNoTitle">true</item> </style> </resources> 
  • ¿Puedes ejecutar juegos XNA en Android?
  • Xamarin, Android. Cada vez que ejecute la aplicación en el dispositivo, la aplicación se unistalled y luego se instala de nuevo.
  • C # barra de progreso circular xamarin - Android
  • Xamarin tiempo de ejecución vs Dalvik
  • Mono para Android: ¿dónde está GCMBaseIntentService?
  • Monodroid - Manejo de eventos en las vistas secundarias de filas ListView reutilizadas
  • C: \ Archivos de programa \ MSBuid \ Novell \ Novell.MOnoDroid.Csharp.targets no se encontró
  • Mostrar la imagen de la pantalla de bienvenida con ajuste automático
  • OnResume Cámara Reinit Negro Pantalla
  • Cómo cambiar el color por defecto cuando el interruptor está "on" (azul a verde) en formas xamarin. En defecto del ios es GReen pero en androide es azul
  • Utilizar un ValueAnimator para hacer que un TextView parpadee diferentes colores
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.