이전에 생성된 모든 액티비티를 죽이고 싶은데 어떻게 하면 좋을까요?


발생하는 문제 및 실행환경

어떤상황이냐면요. 액티비티가 Home,화면1~화면5까지 6개가 있구요. 앱을 실행시키면 처음에

Home이 있고 ->screen 1->screen2->screen3->...->screen5로 이동하는데요.

위 모든 액티비티에 공통의 로그아웃 버튼을 만들고 로그아웃버튼을 유저가 클릭하게되면 모든 액티비티를 종료하고 새로운 Log in 액티비티를 띄우고 싶어요. 거의 모든 FLAG_ACTIVITY를 써보고 스택오버플로우 답변도 뒤져봤는데 해결할 방법이 마땅히 나오지 않았어요. 안드로이드 1.6버전이라서 FLAG_ACTIVITY_CLEAR_TASK도 쓸수가없어요.

어떻게 해결할 방법이 있을까요?

  • 2016년 01월 18일에 작성됨

조회수 291


1 답변


좋아요
0
싫어요
채택취소하기
Intent intent = new Intent(getApplicationContext(), Home.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

이렇게 해보세요.

FLAG_ACTIVITY_CLEAR_TOP는 새로 생성하려는 액티비티와 동일한 액티비티가 스택에 있을경우 동일한 액티비티 위의 모든 액티비티를 종료시키고 기존 액티비티를 새로 생성된 액티비티로 교체한다는 플래그입니다.

  • 2016년 01월 18일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close