Ivanicop
25/04/14, 15:02:36
SOLUCIONADO: ERA OTRA COSA LO QUE PROVOCABA EL ERROR, BORRAD EL TEMA
Hola! Empecé ayer a hacer una app para android y tengo un problema, tengo este codigo, que carga un layout si no existe una variable en sharedprefs o una actividad nueva si encuentra la variable.
El condicional queda asi
IF(ENCUENTRA VARIABLE Y ES IGUAL){
CARGAR LAYOUT
}ELSE{
CREA ACTIVIDAD
}
Entonces funciona bien la primera parte del condicional. El problema esta en crear la actividad ya que cuando abres la app da Force Close y se queda en la actividad que he abierto, por lo que he pensado que me falta cerrar la actividad anterior al abrir la nueva, y no se como hacerlo, tengo este codigo:
//Cargamos login o main
//Buscamos la variable de usuario para ver si ya se esta logueado
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this );
String check = sharedPrefs.getString("username", "desconocido");
if(check.equals("desconocido")) {
setContentView(R.layout.login);
}else{
Intent intent = new Intent(Login.this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
Hola! Empecé ayer a hacer una app para android y tengo un problema, tengo este codigo, que carga un layout si no existe una variable en sharedprefs o una actividad nueva si encuentra la variable.
El condicional queda asi
IF(ENCUENTRA VARIABLE Y ES IGUAL){
CARGAR LAYOUT
}ELSE{
CREA ACTIVIDAD
}
Entonces funciona bien la primera parte del condicional. El problema esta en crear la actividad ya que cuando abres la app da Force Close y se queda en la actividad que he abierto, por lo que he pensado que me falta cerrar la actividad anterior al abrir la nueva, y no se como hacerlo, tengo este codigo:
//Cargamos login o main
//Buscamos la variable de usuario para ver si ya se esta logueado
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this );
String check = sharedPrefs.getString("username", "desconocido");
if(check.equals("desconocido")) {
setContentView(R.layout.login);
}else{
Intent intent = new Intent(Login.this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}