Home Menu

Menu



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


 
Herramientas
  #1  
Viejo 14/04/15, 16:20:02
Avatar de Devl1
Devl1 Devl1 no está en línea
Usuario poco activo
Mensajes: 1
 
Fecha de registro: abr 2015
Mensajes: 1
Modelo de smartphone: vodafone smart 4 turbo
Tu operador: Vodafone
Mencionado: 0 comentarios
Tagged: 0 hilos
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.
Responder Con Cita


  #2  
Viejo 14/04/15, 20:09:36
Avatar de mocelet
mocelet mocelet no está en línea
Desarrollador
Mensajes: 2,203
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -
Mencionado: 17 comentarios
Tagged: 2 hilos
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.
Responder Con Cita
Respuesta

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


Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 12:21:20 (GMT +2)

Cookies
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007