![]() |
|
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 |
«
Tema Anterior
|
Siguiente tema
»
|
Herramientas |
#1
|
||||
|
||||
Cambiar tema desde menu
Buenas! estoy haciendo una app y necesito cambiar el tema de la aplicación desde una de las opciones desde menú, únicamente quiero cambiar el background pero la app se me cierra y es imposible.
El código .java es el siguiente: public class MainActivity extends Activity { static int idTema=R.style.AppBaseTheme; //Tema por defecto protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.setTheme(idTema); @override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } //MENUS @override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.menu_verano: idTema=R.style.TemaVerano; MainActivity.this.finish(); startActivity(new Intent(MainActivity.this, MainActivity.this.getClass())); return true; default: return super.onOptionsItemSelected(item); } } y el codigo del theme.xml es el siguiente: <?xml version="1.0" encoding="utf-8"?> <resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="AppTheme" parent="@style/_AppTheme"/> <style name="_AppTheme" parent="android:Theme.Light"> </style> <style name="TemaVerano" parent="AppBaseTheme"> <item name="android:background">@drawable/fverano</item> </style> </resources> Si alguien ve algo mal o puede ayudarme lo agradecería. |
|
#2
|
||||
|
||||
Si solo quieres cambiar el fondo no hay que destruir la actividad, volverla a crear, etc.... basta con llamar al setBackground de la vista que quieras, o de la root view si quieres que ocupe toda la ventana. Con getRootView en cualquier vista obtienes su referencia.
|
Respuesta |
![]() |
||||||
|
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 12:21:20 (GMT +2)
HTCMania: líderes desde el 2007