terminer l'activité en onActivityResult ne fonctionne pas

J'ai une paire de activités de qui doit vivre ou mourir ensemble. Fondamentalement AlphaActivity fait un peu de travail et envoie une intention (startActivityForResult()) pour BetaActivity. Lorsque BetaActivity est fait, je veux qu'il envoi d'une intention (startActivity()) pour GammaActivity et ensuite appeler finish() sur lui-même. À la fin, j'espérais AlphaActivity de onActivityResult() méthode à appeler, mais qui semble ne jamais arriver. Ma conception est telle qu'à l'intérieur de AlphaActivity de onActivityResult(), j'appelle finish(). Mon plan est telle qu'une fois GammaActivity est atteint, l'utilisateur ne peut jamais revenir soit à AlphaActivity ou BetaActivity. Mais, actuellement, le bouton retour ne prendre l'utilisateur pour la AlphaActivity.

J'ai quelques idées de pourquoi il ne fonctionne pas, mais en discuter ici est inutile depuis que je m'intéresse à ce qui pourrait réellement fonctionner.

EDIT:

Le code est tout à fait standard trucs:

De l'intérieur Alpha

private void startBetaActivity() {
    Intent intent = new Intent(this, BetaActivity.class);
    startActivityForResult(intent, Constant.EXIT_CODE);

}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (resultCode == RESULT_OK) {
        if (requestCode == Constant.EXIT_CODE) {
            this.finish();
        }
    }
}

De l'intérieur de la Bêta:

if (success) {
            startGammaActivity();
            finish();
        }
Ce que vous décrivez devrait fonctionner. Pouvez-vous poster le code où vous commencez BetaActivity et puis le terminer?
Avez-vous besoin de faire quelque chose avec un résultat de BetaActivity? Pourquoi ne peut - AlphaActivity juste finish() quand il commence BetaActivity?

OriginalL'auteur learner | 2013-04-24