2011-06-15 13 views
5

Tengo una aplicación en la que estoy trabajando en la que intento que el usuario cambie el "tema" o el aspecto de los diseños. Por ejemplo, algunas aplicaciones tienen la opción de elegir el "Tema claro" o el "Tema oscuro".Deje que el usuario elija un tema [Android]

Así que básicamente necesita ayuda con lo siguiente:

  • ¿Hay alguna construida en temas de Android que puedo usar?
  • ¿Cómo obtengo acceso a los temas?
  • Cualquier otra información útil. Soy realmente nuevo en esto.
+0

hacer su propio dos o tres diseños diferentes y cuando el cambio de usuario el diseño simplemente llama al método setLayout() y ¡listo para que todo quede oscuro! – doNotCheckMyBlog

Respuesta

14

Usted tendría que crear sus temas usando el proceso estándar Android theme/style, y construir una lista de los temas/recursos que desea poner a disposición del usuario (por ejemplo, "luz" => R.style.MyLightTheme, "Oscuro" => R.style.MyDarkTheme, "iPhone" => R.style.iOSTheme). Exponga esa lista de temas disponibles para el usuario como, por ejemplo, un ListPreference en una pantalla de Preferencias/Configuraciones.

En su onCreate() método (s) de la actividad, antes de llamar a setContentView(), establecer el tema usando this.setTheme(customTheme);

customTheme vendría del shared preferences como se mencionó anteriormente

+0

Esto es exactamente lo que hago en mi propia aplicación. –

Cuestiones relacionadas