본문 바로가기

카테고리 없음

(안드로이드) 다른 액티비티 종료시키기

안드로이드에서 현재 액티비티를 종료시키는것은 쉽다.


하지만 현재 액티비티에서 다른 액티비티를 종료시키는것은 아주 조금 까다로운 과정을 거쳐야 한다.




일단 현재 액티비티를 Second_Activity,

종료시킬 액티비티를 Main_Activity로 가정하자.




우선 Main_Activity에 자신을 지칭하는 객체를 변수로 하나 저장해놓아야 한다.


public static Activity _Main_Activity;

위의 코드를 메인액티비티에 전역변수로 선언한다. (_Main_Activity의 앞에 _를 껴넣은 이유는 별거없다. 그냥 액티비티와 변수를 구분하기 위해서다. 넣어도 안넣어도 상관없다.)



_Main_Activity = Main_Activity.this;



그리고 위의 코드처럼 onCreate안에서 그 변수가 나라는것을 입증(?)해야한다.




그런 뒤에는 Second_Activity로 와서


Main_Activity MA = (Main_Activity)Main_Activity._Main_Activity;

위의 코드를 써놓는다. (어디다 써놓든 상관없다. finish()코드보다 위에 있으면 된다.)


Second_Activity에서 Main_Activity를 선언하여 그 객체에 실제 Main_Activity에 만들어놓은 _Main_Activity변수를 담는것이다.


즉, MA라는 객체를 finish()한다는것은 main_Activity를 finish()하는게 되는것이다.