Activity Stack 제어

2011. 10. 21. 10:38
Android에서는 화면(Activity)가 새로 열릴 때마다
쌓도록 되어있고 뒤로(Back) 버튼을 누르면 현재 Activity를 제거 하여
History를 관리한다.

그런데 때때로 로그인 등 세션을 날리고 새로 하고 싶을 때
쌓여있는 Activity들을 날리고 싶을 때에는
Intent를 사용한다.

Intent intent = new Intent(Main.this, Sub.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);


Intent.FLAG_ACTIVITY_NO_HISTORY 는 호출하는 Activity를 Stack에 쌓지 않는다
따라서 여러화면을 거치다 Back버튼을 눌렀을 때 Sub.class는 나타나지 않는다.

쌓인 History를 모두 날릴 때에는
Intent.FLAG_ACTIVITY_CLEAR_TOP 이다.
Activity를 호출하면서 쌓여있던 Stack을 초기화 시킨다.

더 자세한 것은 FLAG_ACTIVITY를 찾아볼 것.
두개 이상도 사용가능 ^^
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP)
728x90
BLOG main image
"그게 뭐 어쨌다는 거냐?" 늘 누가 나에게 나에대한 말을할 때면 이말을 기억해라. by nobang

카테고리

nobang이야기 (1933)
Life With Gopro (7)
Life With Mini (79)
Diary (971)
너 그거 아니(do you know) (162)
난 그래 (159)
Study (290)
속지말자 (10)
Project (34)
Poem (15)
Song (0)
Photo (113)
낙서장 (45)
일정 (0)
C.A.P.i (2)
PodCast (0)
nobang (27)
고한친구들 (4)
recieve (0)
History (0)
android_app (2)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

Total :
Today : Yesterday :