안드로이드 개발 질문/답변
(글 수 45,052)
A클래스에서 B로 그리고 C로 이동후
C클래스에서 A클래스로 이동후
mIntent = new Intent(C.this, A.class);
startActivity(mIntent);
A클래스에서 finish() 로 어플 종료하게할려니깐
this.finish();
다시 C클래스로 이동하네요..;; 왜 이런거져 ..C에서 A 클래스로 이동후 어플빠저나가게 하는방법즘알려주세요
2010.07.10 19:01:42
흠...
일단 어플을 돌리면서 필요없는 Activity들은 다른 Activity로 이동할때 종료를 시켜주시고
만약 A와 C가 같이 살아있게 하고싶고 같이 종료하고 싶다면
Activity를 호출할때 startActivityForResult로 호출하고
종료시에 이전 Activity가 result값을 받으면 종료되게 해도 되겠네요...
메소드중에 다른 Activity를 종료시키는 명령어가 있었던걸로 기억하는데
오래돼서 정확히 기억이 안나네요...
일단 어플을 돌리면서 필요없는 Activity들은 다른 Activity로 이동할때 종료를 시켜주시고
만약 A와 C가 같이 살아있게 하고싶고 같이 종료하고 싶다면
Activity를 호출할때 startActivityForResult로 호출하고
종료시에 이전 Activity가 result값을 받으면 종료되게 해도 되겠네요...
메소드중에 다른 Activity를 종료시키는 명령어가 있었던걸로 기억하는데
오래돼서 정확히 기억이 안나네요...
finish()는 해당 Activity를 종료하는것입니다.
A -> B A를 finish() 안해주면 task에 A,B순으로 존재하는거고
B -> C 앞에서 A,B를 종료안하면 task에 A,B,C순으로 존재하는거고
C -> A 앞에서 A,B,C를 종료안하면 task에 A,B,C,A순으로 존재하는거죠...
결국엔 마지막에 있는 A를 finish()시키면 그 뒤에있던 C가 최상위로 올라오기때문입니다.