2010-11-24 14 views
3

Wenn Sie startActivityForResult() aufrufen, stellen Sie auch "int requestCode" bereit. Wie können Sie diesen Parameter in der gestarteten Aktivität erhalten (um dort einige Initialisierungen zu ändern)?requestCode-Parameter in startActivityForResult

Oder verstehe ich den Zweck dieses Parameters falsch und es nur verwendet, um Anrufe in onActivityResult() zu unterscheiden, und die gestartete Aktivität sollte basierend auf Intents Aktion und extra Bundle initialisiert werden? Ich frage mich, wo ist es dann gehalten, ich nehme an, es ist immer noch in Aktivität, aber privat.

Antwort

3

Ich denke, Sie haben ein kleines Missverständnis. Der requestCode wird nur in Ihrer ursprünglichen Aktivität verwendet, um das Ergebnis zu vergleichen. Alle Parameter, möchten Sie auf die Ausgangsaktivität passieren sollte durch Extras übergeben werden:

Intent.putExtra(); 
+0

Wie kann ich diese Doppelposts vermeiden? : s – Impression

+0

Ich habe einige Parameter durch extra Bündel übergeben, aber dann sah requestCode und entschied, einen Hauptparameter dort zu setzen, war aber nicht in der Lage, es zu tun. Danke für die Klarstellung. – shtolik

1

Ich denke, es ist nur zu unterscheiden Anrufe in onActivityResult(). Wenn Sie spezielle Initialisierungsparameter senden möchten, fügen Sie sie in die Extras der rufenden Absicht ein.

Verwandte Themen