OnActivityResult no funciona (Android)
Estoy utilizando una función simple OnActivityResult, pero no me está devolviendo los resultados deseados.
Por favor, vea mi código y dime dónde estoy haciendo mal.
- Android.Share a las redes sociales
- Manera sana de ir de ArrayList <Long> a través de una intención
- Cómo utilizar la intención en la clase no actividad
- IntentRecieverLeakedException, ¿Echas de menos una llamada a unregisterReceiver ()? En android
- Cómo obtener vídeos (no locales) de la aplicación Google Fotos
public void OnClickFunction(View view) { Intent intent = new Intent(getApplicationContext(), Second.class); startActivityForResult(intent, RESULT_OK); /// My actions. . . }
Luego, en la segunda clase, he establecido Result como este:
Button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { ValueOne = EditText.getText().toString().trim(); if (ValueOne.equals(String.valueOf(Answer))) { Toast.makeText(getApplicationContext(), "Correct Answer", 0).show(); Second.this.setResult(RESULT_OK, null); Second.this.finish(); } else { Toast.makeText(getApplicationContext(), "Wrong Answer", 0).show(); } } });
Ahora volviendo a la primera clase, desde donde se llamaba la Intención:
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); // if (requestCode == RESULT_OK) // { if (resultCode == RESULT_OK) { ///// MyActions. . . } // } }
El depurador no está depurando esta función, por lo que los resultados deseados no vienen.
¿Dónde estoy haciendo mal?
- Abrir un archivo seleccionado (imagen, pdf, ...) de forma programática de mi aplicación de Android?
- Intentos extras que faltan cuando comenzó la actividad
- Intento vacío (excepción nullpointer) en el flujo maestro / detallado al hacer clic en "arriba" en la barra de acciones
- Iniciar y detener la grabación desde un botón en una notificación
- Aplicación para Android que sobrevive a la memoria limpia
- ¿Es seguro reutilizar una intención?
- Android: Intenciones implícitas contra los receptores de difusión
- ¿Cómo liberar el recurso de micrófono cuando otra aplicación de Android lo necesita?
Tienes que destruir la segunda actividad. Intente pulsar el botón Atrás. Puedo ver todos los mensajes de registro en onActivityResult
Primera Actividad
public class FirstActivity extends Activity { /** Called when the activity is first created. */ int result = 100; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Intent i = new Intent(this,SecondActivity.class); startActivityForResult(i, result); } @Override protected void onActivityResult (int requestCode, int resultCode, Intent data) { Log.i("H", "RequestCode:" + requestCode); Log.i("H", "ResultCode:" + resultCode ); } }
SecondActivity
public class SecondActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); setResult(RESULT_OK); Log.i("S","Exiting Second Activity"); } }
En clase de origen:
int activity=1; Intent i=new Intent(Sourceclass.this,destination.class); startActivityForResult(i,activity);
En clase Destino:
Intent i=new Intent(); setResult(RESULT_OK,i); finish();
En OnActivityResult de la clase de origen:
public void onActivityResult(int requestCode, int resultCode, Intent data) { if (resultCode == RESULT_OK) { if(requestCode==1) { Log.e("check","check"); } } }
- Medir el área de polígono irregular en android
- Cómo agregar el icono arrastrar con el cajón de navegación