Android: requestCode y resultCode

me pregunto si estoy entendiendo correctamente los conceptos de requestCode y resultCode. Básicamente, tengo un entero arbitrario (el requestCode) asociado con una actividad. Por ejemplo, en el tutorial de Bloc de notas , tenemos

private static final int ACTIVITY_CREATE=0;
private static final int ACTIVITY_EDIT=1;

Luego usamos startActivityforResult (intent, requestCode) para iniciar una actividad, p. la actividad "crear nota". Hacemos algo en esa actividad y devolvemos un resultCode.

En la actividad principal detectamos el resultCode con onActivityResult (requestCode, resultCode, intent). Luego podemos usar el requestCode para ver qué actividad se está devolviendo, el resultCode para ver el resultado de esa actividad y los "extras" de la intención para obtener los datos devueltos.


¿Hay algo especial acerca de los resultCodes integrados, como RESULT_CANCELED? La documentación en el sitio del desarrollador parece sugerir que los resultados incorporados son simplemente números enteros.

¿Y me parece que esto podría complicarse mucho? Por ejemplo, si tuviera 10 actividades posibles para iniciar, entonces tendría que tener una función gigante onActivityResult para verificar qué actividad se devuelve, ¿no es así?

11
задан Machavity 1 May 2019 в 23:09
поделиться