Nel mio esempio ho 3 classi: Classe A, l'attività principale. La classe A chiama startActivityForResult:
Intent intent = new Intent(this, ClassB.class);
startActivityForResult(intent, "STRING");
Classe B, questa classe è un TabActivity:
Intent intent = new Intent(this, ClassC.class);
tabHost.addTab...
Classe C, questa classe è un'attività normale:
Intent intent = this.getIntent();
intent.putExtra("SOMETHING", "EXTRAS");
this.setResult(RESULT_OK, intent);
finish();
onActivityResult viene chiamato nella classe A, ma il risultatoCode è RESULT_CANCELED
invece RESULT_OK
e l'intento restituito è nullo. Come posso restituire qualcosa dall'attività all'interno di un TabHost?
Mi rendo conto che il problema è che la mia Classe C è effettivamente in esecuzione all'interno della Classe B, e la Classe B è ciò che sta tornando RESULT_CANCELED
alla Classe A. Semplicemente non conosco ancora un lavoro.