안드로이드에서 현재 액티비티를 종료시키는것은 쉽다.
하지만 현재 액티비티에서 다른 액티비티를 종료시키는것은 아주 조금 까다로운 과정을 거쳐야 한다.
일단 현재 액티비티를 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()하는게 되는것이다.