Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 09/10/12, 15:17:53
Array

[xs_avatar]
set92 set92 no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Mensajes: 468
Modelo de smartphone: samsung
Tu operador: Movistar
Como se cambia el style de un layout?

Estaba programando ayer en clase y me pregunto un compañero como se hacian los styles, que el iba al layout activity_main.xml en modo grafico y le daba arriba donde esta la estrellita en azul y cambiaba al Holo.Black pero que no le funcionaba, y que podia cambiar a cualquiera que solo le cambia en el visor de eclipse, una vez lo ejecuta en el movil o el emulador ya no le aparece ese style que ha puesto.

Lo estuve mirando ayer y hoy pero no encuentro nada, veo que esta el styles.xml que es para definir tus propios themes y que esta el que usa la app por defecto, pero he cambiado ese de
<style name="AppTheme" parent="android:Theme.Light" />
a
<style name="AppTheme" parent="android:Theme.Holo" />

y aunque no me da error no me funciona, alguien sabe como se usan esos styles?

EDIT: Acabo de conseguir cambiar los styles de todas las activitys, lo he hecho recurriendo a AndroidManifest.xml y en Theme dandole a System Resources
__________________
Gracias a todos aquellos que no piensan en lo que cuesta diseñar/desarrollar una app, que no pagan ni 5 miseros euros y fastidian a todos los programadores, es un gran aliciente para todos los futuros programadores como yo

Última edición por set92 Día 09/10/12 a las 16:18:56.
Responder Con Cita


  #2  
Viejo 09/10/12, 16:37:01
Array

[xs_avatar]
sgsbarna sgsbarna no está en línea
Usuario muy activo
 
Fecha de registro: nov 2010
Localización: Montmeló
Mensajes: 605
Modelo de smartphone: GT-I9000, GT-I9001, GT-I9300, Tab2 7"
Tu operador: Vodafone
 Cita: Originalmente Escrito por set92 Ver Mensaje
Estaba programando ayer en clase y me pregunto un compañero como se hacian los styles, que el iba al layout activity_main.xml en modo grafico y le daba arriba donde esta la estrellita en azul y cambiaba al Holo.Black pero que no le funcionaba, y que podia cambiar a cualquiera que solo le cambia en el visor de eclipse, una vez lo ejecuta en el movil o el emulador ya no le aparece ese style que ha puesto.

Lo estuve mirando ayer y hoy pero no encuentro nada, veo que esta el styles.xml que es para definir tus propios themes y que esta el que usa la app por defecto, pero he cambiado ese de
<style name="AppTheme" parent="android:Theme.Light" />
a
<style name="AppTheme" parent="android:Theme.Holo" />

y aunque no me da error no me funciona, alguien sabe como se usan esos styles?

EDIT: Acabo de conseguir cambiar los styles de todas las activitys, lo he hecho recurriendo a AndroidManifest.xml y en Theme dandole a System Resources
Eso mismo... yo lo cambio primero en la estrellita para diseñar correctamente... pero descubrí que si no lo cambias en el manifiesto de nada sirve...
__________________
Piensa en verdiblanco! Descárgatela totalmente gratis!!
Responder Con Cita
  #3  
Viejo 09/10/12, 17:20:19
Array

[xs_avatar]
set92 set92 no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Mensajes: 468
Modelo de smartphone: samsung
Tu operador: Movistar
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
__________________
Gracias a todos aquellos que no piensan en lo que cuesta diseñar/desarrollar una app, que no pagan ni 5 miseros euros y fastidian a todos los programadores, es un gran aliciente para todos los futuros programadores como yo
Responder Con Cita
  #4  
Viejo 09/10/12, 17:37:42
Array

[xs_avatar]
set92 set92 no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Mensajes: 468
Modelo de smartphone: samsung
Tu operador: Movistar
SOLUCIONADO

Justo acabo de encontrar la solucion cuando lo iba a dejar, tambien se modifica el theme de cada activity en el AndroidManifest y se hace en las etiquetas <activity></activity> y quedaria asi:

Código:
        <activity
            android:name="AcercaDe"
            android:theme="@android:style/Theme.Holo.Light.Dialog.NoActionBar" >
        </activity>
__________________
Gracias a todos aquellos que no piensan en lo que cuesta diseñar/desarrollar una app, que no pagan ni 5 miseros euros y fastidian a todos los programadores, es un gran aliciente para todos los futuros programadores como yo
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 12:37:45 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /