Contenido sobre Android
Buscar
Social
Ofertas laborales ES

Foro sobre Android > Button comutado

Hola estoy dandole vueltas a un tema,tengo un button en el cual cada vez que pulsas cambia de Inicio a fin y vicebersa hasta ahi todo bien el problema es que cuando cierro la aplicacion y guardo el estado al abrir la aplicacion no recupero en que estado se quedo el botton seguramente es una tonteria pero por mas que leo no consigo dar con la solucion aqui el codigo:

public class MainActivity extends Activity implements View.OnClickListener {

public Button btOcupado;
public boolean sem;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btOcupado =(Button) findViewById(R.id.btOcupado);

}


}

@Override
protected void onStart() {
super.onStart();
//cargar la variable sem
Cargar();
//llama a la funcion que cabia de estado el texto del boton
Estado();
}

//guardar configuración aplicación Android usando SharedPreferences
public void Guardar(){
SharedPreferences prefs = getSharedPreferences("Configuracion", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putBoolean("sem", sem);

editor.commit();

}

//cargar configuración aplicación Android usando SharedPreferences
public void Cargar(){

SharedPreferences prefs = getSharedPreferences("configuracion", Context.MODE_PRIVATE);
sem = prefs.getBoolean("sem", sem);
Toast.makeText(this, "en el getShare vale:" + sem, Toast.LENGTH_LONG).show();
}


public void onClick(View view) {

Estado();

Intent intent = new Intent(this, miclase.class);
startService(intent);

}
public void Estado (){
btOcupado =
(Button) findViewById(R.id.btOcupado);
if (sem==false){
//si es false Fin
btOcupado.setText(this.getString(R.string.Fin));

sem=true;

}
else
{
//si es true esta inicio
btOcupado.setText(this.getString(R.string.inicio));

sem=false;

}
//Guarda el estado en el que se quedo
Guardar();
return;

}


}
@Override
public void onDestroy(){
super.onDestroy();

// al cerrar la aplicacion guardo el la bariable sem
Guardar();

}

}

he intentado ponerlo en el evento onStart y guardar valores en onPause pero no funciona
agradeceria cualquier ayuda muchas gracias por todo espero contestacion

septiembre 29, 2013 | Unregistered Commentertomas