Cómo hacer referencia a un estilo en un tema personalizado

Tengo una pantalla de inicio de sesión que se marca de manera diferente para diferentes versiones de mi aplicación. Necesito que la imagen de fondo sea diferente en el archivo de diseño de esta pantalla, así que quiero señalar a un estilo diferente para el contenedor de nivel superior. Estoy un poco en una pérdida en cómo hacer esto.

He declarado un estilo como:

<resources> <declare-styleable name="ThemeBase"> <attr name="loginPageContainerStyle" format="reference" /> </declare-styleable> </resources> 

Tengo varios temas diferentes para la aplicación, como tal:

 <resources> <style name="ThemeBase" parent="android:style/Theme.Light" /> <style name="ThemeOne" parent="ThemeBase"> <item name="loginPageContainerStyle">@style/loginPageContainerThemeOne</item> </style> <style name="ThemeTwo" parent="ThemeBase"> <item name="loginPageContainerStyle">@style/loginPageContainerThemeTwo</item> </style> </resources> 

Y he definido los siguientes estilos:

 <resources> <style name="loginPageContainerThemeOne"> <item name="android:background">@drawable/background_theme_one</item> </style> <style name="loginPageContainerThemeTwo"> <item name="android:background">@drawable/background_theme_two</item> </style> </resources> 

Y finalmente un archivo login.xml algo como:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/loginRoot" style= [ ? WHAT GOES HERE ? ] android:gravity="center_horizontal" android:orientation="horizontal"> [ LAYOUT STUFF ... ] </LinearLayout> 

¿Estoy haciendo algo mal? ¿Se puede hacer esto de esta manera?

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.