안드로이드 개발 질문/답변
(글 수 45,052)
어플 상단에 홈으로 이동하는 버튼을 구현하려고 합니다.
문제는 액티비티 실행 순서 입니다..
평소 그냥 홈으로 이동하는 버튼의 이벤트를 finish()로 현재 액티비티를 죽여 이전 액티비티로 이동하게 하였습니다.
이건 홈 이외의 서브페이지가 한단계만 있을 경우 되는 방법이지요..
하다보니 게시판을 구현하게되었고.. 이럴경우 게시물마다 새로운 액티비티를 띄우는 구조다 보니..
이런 finish()로는 안되더군요..
다시 말하면.. 액티비티 호출 순서가 ... 홈 > A > B > C > D 가 되었을때 D페이지의 홈버튼을 누르면 D C B A 액티비티 역시
모두 종료시키고 홈으로 돌아가게 하고 싶습니다..
그래야 홈에서 뒤로가기 버튼을 클릭시 D 페이지로 이동되는 현상을 방지할수 있겠지요..
물론 .. 홈에서는 뒤로가기 누를시 현재의 경우는 종료되는 경우 밖에 없기때문에 그냥 프로그램 종료시키면 되긴 합니다만..
이런 경우 말고도 여러가지 경우가 존재할수 있을것 같아 질문 드립니다..




개인적인 의견입니다.
홈 > A > B > C > D 에서 D페이지의 홈버튼을 누르면
A > B > C > D > 홈 으로 바뀌는 것이 맞지 않는가 싶습니다.
이 부분은 Task 관련해서 알아보시면 될듯합니다.
http://developer.android.com/guide/topics/fundamentals/tasks-and-back-stack.html
제가 제시한 기능 관련해서는 인텐트 플래그에 Intent.FLAG_ACTIVITY_REORDER_TO_FRONT를 셋팅하시면
Activity가 없으면 새로 생성되고 있다면 가장 앞쪽으로 오게 된답니다.