¿Alguien puede enumerar amablemente cuáles son los valores de requestCode
que se aprobarán con startActivityForResult()
y su propósito? Además, ¿puede explicar en los parámetros setResult
disponibles como RESULT_OK
y qué más hay? Amablemente ayuda.Tipos de RequestCode para startActivityforResult
Respuesta
Al iniciar una actividad de resultado con requestCode >= 0
, este código será devuelto a onActivityResult()
cuando la segunda actividad de la primera actividad es finished.You puede iniciar varias Activity
para el resultado de su Activity
. En cada caso, obtiene la devolución de llamada al método startActivityForResult()
pasando el requestCode. En onActivityResult()
podemos usar requestCode para averiguar para qué actividad hemos recibido la devolución de llamada. Entonces, para diferenciar entre las devoluciones de llamada de Activities
, usamos diferentes tipos de solicitud.
Por ejemplo:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Intent i = new Intent(FirstActivity.this, SecondActivity.class);
startActivityForResult(i, 1);
Intent i = new Intent(FirstActivity.this, ThirdActivity.class);
startActivityForResult(i, 2);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
//Get the result from SecondActivity
}
}
else if (requestCode == 2) {
if (resultCode == RESULT_OK) {
//Get the result from ThirdActivity
}
}
}
Usted puede poner lo que quiera en requestCode
, que está ahí para que usted sepa qué información específica que usted está esperando para volver después de comenzar la Activity
con especificada requestCode
. El Activity
que se llama debe llamar al setResult(RESULT_OK)
cuando ha pasado la información al anterior Activity
para verificar que estos sean los datos correctos y todo salió bien.
El requestCode
es decisión suya. Le ayudará a reconocer qué Activity
ha terminado, en su método onActivityResult()
. Además, los parámetros de resultado son más o menos depende de usted, siempre y cuando trabaje con sus propias Actividades solamente. Puede considerarlo como el valor de retorno de la actividad llamada a la llamada.
El requestCode
en startActivityForResult()
se utiliza para asignar un id a la solicitud, por lo que la solicitud se puede identificar con este código, en onActivityResult()
. Como si alguien hubiera escrito códigos para comenzar dos actividades en una actividad B y C, siguiendo Código
startActivityForResult(new Intent(A.this, B.class), 1);
startActivityForResult(new Intent(A.this, C.class), 2);
ahora en onActivityResult()
puede reconocida que Activity
ha vuelto resultado.
El método setResult()
se utiliza para establecer Intent
en Result y resultCode
. Por resultCode
le decimos onActivityResult()
que el resultado es correcto o cancelado. en The Intent
que establecemos en Result, se puede utilizar para pasar algunos datos, por intent.putExtra()
métodos.
- 1. ¿Cuál es el significado de requestCode en startActivityForResult
- 2. Usando startActivityForResult, ¿cómo obtener requestCode en la actividad secundaria?
- 3. requestCode mal en onActivityResult
- 4. llamada personalizada Actividad como startActivityForResult
- 5. Recuperar requestcode de BroadcastReceiver alarma
- 6. StartActivityForResult de un servicio
- 7. startActivityForResult no funciona correctamente con launchMode singleInstance
- 8. ¿Cómo manejo el botón Atrás cuando startActivityForResult está activo?
- 9. Analógico de startActivityForResult for Service
- 10. startActivityForResult from ActivityGroup?
- 11. ¿Tiene requestCode en PendingIntent siempre compatible?
- 12. dentro de Android Dialog, cómo configurar onActivityResult para startActivityForResult?
- 13. ¿cómo podemos usar startActivityforResult() para intento de correo electrónico?
- 14. use startActivityForResult from no-activity
- 15. Android - startActivityForResult fuera de una actividad?
- 16. StartActivityForResult sincrónico - Esperando que se complete la actividad
- 17. ¿podemos llamar a startActivityForResult desde el adaptador?
- 18. ¿Por qué es resultCode = -1 aquí después de StartActivityForResult?
- 19. ¿Cuál es el mecanismo detrás de startActivityForResult() en Android?
- 20. Tipos de concreto o interfaces para tipos de devolución?
- 21. array_agg para tipos de matriz
- 22. Mostrar para IO tipos
- 23. IQueryable para tipos anónimos
- 24. Tipos para números grandes
- 25. Teoría de tipos: tipos de tipos
- 26. ¿Cómo hacer que startActivityForResult funcione en la actividad externa?
- 27. Prácticas recomendadas de programación genérica/de plantilla: para limitar tipos, o no para limitar tipos
- 28. Justificación para arrojar tipos estáticos?
- 29. ¿Usos prácticos para tipos estructurales?
- 30. C++: type_info para distinguir tipos