W moim przykładzie mam 3 klasy: klasa A, główna aktywność. Klasa A wywołuje startActivityForResult:
Intent intent = new Intent(this, ClassB.class);
startActivityForResult(intent, "STRING");
Klasa B, ta klasa to TabActivity:
Intent intent = new Intent(this, ClassC.class);
tabHost.addTab...
Klasa C, ta klasa jest normalną działalnością:
Intent intent = this.getIntent();
intent.putExtra("SOMETHING", "EXTRAS");
this.setResult(RESULT_OK, intent);
finish();
onActivityResult jest wywoływany w klasie A, ale wynik jest kodem RESULT_CANCELED
zamiast, RESULT_OK
a zwrócona wartość zamiaru ma wartość null. Jak mogę zwrócić coś z działania w TabHost?
Zdaję sobie sprawę, że problem polega na tym, że moja klasa C faktycznie działa w klasie B, a klasa B wraca z RESULT_CANCELED
powrotem do klasy A. Po prostu nie znam jeszcze rozwiązania.