Как изменить порядок действий в Android? - PullRequest
1 голос
/ 17 сентября 2011

У меня простая проблема.В моем приложении у меня есть 3 действия A, B, C.Действие A является основным действием. При выполнении какого-либо действия с действием A оно переходит к действию B, а затем после некоторого действия оно переходит к заданию C. Когда я выполняю упражнение C, я нажимал кнопку «Домой», и появлялся главный экран.Теперь, когда я снова нажимаю на значок приложения, он снова запускает действие C.Но я хочу, чтобы активность А пришла, так как я должен спросить пароль.Я хочу, чтобы все действия были завершены, когда я нажимаю кнопку «Домой» и когда я снова нажимаю значок приложения, должна быть активирована операция входа в систему, то есть операция А.Кто-нибудь может дать мне какое-нибудь решение?

Ответы [ 5 ]

1 голос
/ 18 сентября 2011

Если ваше увольнение намеревается перейти от одного действия к другому, как это ----->

Intent intent = new Intent (this, B.class);startActivity (intent);

затем добавьте эту вещь в ваш код, тогда все будет хорошо ---->

addFlags (Intent.FLAG_ACTIVITY_REORDER_TO_FRONT) как это ----->

Intent intent = new Intent (this, B.class) .addFlags (Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);startActivty (намерение);

ПРИМЕЧАНИЕ ---> здесь (это) означает ваше действие A.

0 голосов
/ 18 сентября 2011

Я изменил файл Manifest и удалил фильтры намерений из своей деятельности B и C в качестве средства запуска. Теперь, когда я нажимаю значок приложения, я достигаю активности входа в систему.

0 голосов
/ 17 сентября 2011

Вы можете управлять своим приложением, когда он находится в состоянии «Пауза» (когда пользователь нажимает кнопку «Домой»).

 protected void onPause(){
    super.onPause();

}

Здесь вы можете делать все, что хотите.

Другой способ - перехватить кнопку «Домой», и, прежде чем приложение перейдет в фоновый режим, оно быстро вернется к действию А.

0 голосов
/ 17 сентября 2011

Большая часть этого ответа основана на жизненном цикле действия .

Когда пользователь нажимает кнопку «Домой», действие, по крайней мере, приостанавливается.Используйте функцию onPause (), чтобы обнаружить это.С этого момента вы можете сделать несколько вещей, самым базовым из которых было бы просто завершить свою деятельность. Вызов метода finish () убьет действие.Это позволит вам перемещаться по действию в обычном режиме, но убьет его, если вы выйдете из него.

Если действие становится более сложным, onPause () может быть вызван по другим причинам, например, требуется память.Возможно, стоит добавить немного дополнительной логики, чтобы определить, находится ли человек в подфункции или нет.

Альтернативой является использование функции onRestart () и просто завершение действия.Это может избавить от некоторых странностей.

0 голосов
/ 17 сентября 2011

Активность Жизненный цикл: http://developer.android.com/reference/android/app/Activity.html

Используйте эти функции обратного вызова, чтобы узнать, что происходит с вашей деятельностью. Когда пользователь нажимает домашнюю кнопку, вызовите finish () в вашем действии C. Упражнение B обнаружит, что C завершено, и также завершит (). Чем вы вернулись в Занятии А.

...