активность закрывается при нажатии кнопки домой

У меня есть 2 действия "A" и "B", "A" начинается с "B". Я запускаю действие «B» с помощью метода startActivityForResult(). Когда «B» находится на переднем плане и нажата кнопка «Домой», приложение переходит в фоновый режим. И когда я снова пытаюсь запустить приложение, оно начинается с активности «А», а не «Б». Результат по операции "Б" аннулируется. Почему "В" закрыто? Я думал, что использование launchModes в манифесте может решить проблему, но в документации сказано, что я не могу использовать режимы singleTask и singleInstanse, потому что результат будет отменен, и активность не начнется.

Как я могу это решить?

PS Спасибо за ответы, проблема решена. Я пытался использовать finish() в onStop(), поэтому, когда действие «B» находится на переднем плане и нажата кнопка «Домой», оно завершается.


person Zakharov Roman    schedule 30.04.2012    source источник
comment
Вам не нужно беспокоиться о launchModes для этого. По умолчанию B должен быть самым верхним Activity в вашем стеке. Что-то еще должно быть не так. Видите ли вы что-нибудь потенциально подозрительное на logcat?   -  person Vikram Bodicherla    schedule 30.04.2012
comment
Вы можете вставить свой код активности b   -  person Shankar Agarwal    schedule 30.04.2012


Ответы (1)


Начните свою активность B с намерения, используя метод startActivity(Intent).

Ваше намерение должно быть создано с аргументами A.this и B.class, в результате чего код будет выглядеть примерно так:

Намерение i = новое намерение (A.this, B.class);

A.this.startActivity(i);

person dragon_48192    schedule 30.04.2012
comment
В вашем случае я не могу получить результат от действия B - person Zakharov Roman; 30.04.2012