Pero en el AndroidManifest lo cambias para toda la app, y si tu quieres cambiar por activitys, es decir que cada layout tenga un theme distinto no se puede de esta forma.
He estado investigando, y solo he visto para hacerlo desde java que seria haciendo un metodo this.setTheme(R.style.NOMBRE_DEL_ESTILO) y poniendolo dentro del metodo onCreate del layout, y delante del .setContentView , si lo pones despues entonces no funciona porque ya has dicho el layout que vas a mostrar.
El unico problema de esta forma es que tienes que ir al Styles.xml y crear un Style con el estilo que quieras, en mi caso he usado uno que nos da Google y es android:Theme.Holo.Light.Dialog.NoActionBar con lo que te queda asi:
<style name="ThemeCreditos" parent="android:Theme.Holo.Light.Dialog.NoActionBa r" />
Y luego en el .java del layout tienes que poner esto:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Seteamos el theme de la activity antes de mandar visualizar el layout
this.setTheme(R.style.ThemeCreditos);
setContentView(R.layout.activity_main);
}
Y con eso ya te funciona pero para eso me he tirado unas 2h, pero por XML todavia no he visto como se hace o si es posible, en el RelativeLayout ahi una propiedad que es style pero pone que es para un estilo custom, es decir para este caso no sirve porque tienes que referenciar a un style del styles.xml ...
Acabo de probarlo y no funciona, es decir pones como un atributo del layout style="@style/ThemeCreditos" y deberia ponertelo pero no lo hace, osea por ahora solo lo consigo hacer por el .java