Tengo un formulario simple donde un usuario puede agregar, editar y eliminar personas de una lista. Cuando un usuario ha elegido editar a una persona, ejecuta startActivityForResult para que pueda realizar los cambios apropiados y actualizar la lista una vez que se completa la edición. Si el usuario hace clic en el botón Atrás desde la pantalla de edición aparece un error de cierre forzado.¿Cómo manejo el botón Atrás cuando startActivityForResult está activo?
Creo que tiene algo que ver con el sistema que espera un resultado, y no lo estoy atrapando correctamente. ¿Cómo atraparía este error?
Este es el código onActivityResult actualmente en vigor:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
Bundle extras = intent.getExtras();
switch(requestCode) {
case ACTIVITY_CREATE:
String person = extras.getString("person");
mDbHelper.addPerson(person);
fillData();
break;
case ACTIVITY_EDIT:
Long rowId = extras.getLong("_id");
if (rowId != null) {
String editPerson = extras.getString("person");
mDbHelper.updatePerson(rowId, editPerson);
}
fillData();
break;
}
}
Gracias por cualquier ayuda.
Gracias por su ayuda. Estoy seguro de que ha encontrado el problema, pero no estoy seguro de cómo implementarlo. Busqué en google y no pude encontrar un ejemplo que coincidiera con mi escenario. Esto es lo que intenté implementar, pero el error aún existe.
Gracias por su gran ayuda. – alockrem