안드로이드에서 액티비티란, 쉽게 말해 "활성화" 라는 의미이고,


하나의 화면의 활성화 여부를 관리하는 객체라 할 수 있다.

자세한 사항은 다시 또 공부할 때에 정리해야지...

이러한 액티비티의 생명주기에 대한 기초지식에 대해 알아보도록 하자.

액티비티의 생명주기란?


화면에 액티비티가 무언가를 보여주기 위해 호출되는 메서드라고 할 수 있습니다.


예를 들어, 카X오톡 같은 애플리케이션에서 대화방을 클릭했을 때, 자신이 선택한 채팅방을 띄워주는 것이라 할 수 있습니다.

액티비티의 생명주기는

onCreate()  -> onStart() ->onResume() ->onPause() -> onStop()  -> onDestroy() 의 순으로 이루어져 있습니다.

들어가면 이와 같은 그림을 확인할 수 있을 것입니다.

 

 


먼저 onCreate()란 무엇인지 알아보자.

onCreate()는 Activity가 메모리에 최초에 생성될 때에 호출되는 메서드입니다.

​이 당시에는 사용자가 육안으로는 볼 수 없습니다.

이다음 호출되는 메서드는  onStart() 메서드입니다.

이 메서드는 생성된 Activity가 화면에 보이려 할 때 호출되는 메서드로써

사용자에게는 보이지만 실제로 Activity는 start 메서드에 머무르지 않고

바로 그다음 단계인 onResume()을 실행시킵니다. 

onResume() 메서드는 Create 이후에 start 바로 뒤따르며,

Activity 내에서 사용자가 다른 Activity를 호출하거나 전화가 오는 상황 같은 일이 발생 전까지는 Resume 상태로 유지가 되는 것을 말하며, 사용자로 부터 입력을 받을 수 있는 시점에 호출되는 메서드 입니다.


 

 

 

 옆에 보시는 그림을 주황색 Activity라고 가정 했을 경우

 사용자에게 주황색 Activity가 보여지기 까지의 과정을

 onCreate()->onStart()-> onResume() 이라고 할 수 있습니다. 

다음onPause() 메서드 입니다.

onPause()메서드는 위에서 언급한 바와 같이 전화가 오거나 사용자에 의해서 다른 Activitiy가 선택 되었을시에 다른 Activity가 화면의 일부를 가리며 두 개의 화면이 공존하는 상태에서 호출되는 메서드 입니다.

onPause()가 일어남과 동시에 onStop() 메서드가 실행 됩니다.

onStop()메서드는 다른 Activity에 의해 원래 실행되던 Activity가 가려져서 화면에 보이지 않게 되는 시점에 호출되는 메서드 입니다.

onStop()에서 사용자가 원래의 Activity로 돌아갈 경우에는 onRestart() 메서드와 onStart() 메서드에 의해

초기 Activity로 돌아갈 수 있습니다.

마지막으로 언급할 메서드는 onDestroy() 메서드 입니다.

 이 메서드는 Activity가 소멸 되려 할 때 호출되는 메서드로,

 사용자가 어플리케이션을 종료하거나, onCreate() 메서드에서 finish()함수를 호출하는 경우에 사용되는 메서드 입니다.

​ 

옆에 보시는 것과 같은 그림을 가지고 설명해 드리겠습니다.

최초 주황색 Activity에서 다른 Activity인 초록색 Activity가 실행 되었을 때,

onPause()에 의해 초록색과 주황색 Activity가 공존할 수 있습니다.




 

이 그림은 onStop()메서드의 예시입니다.

  최초 주황색 Acitivity는 사라지고,

사용자가 실행시킨 또는 전화가와서 실행된 새로운 Activity가 보여지는 부분으로,

주황색 Activity의 상태는 멈춤상태가 되는 것입니다.



글쓰는건 참어렵지만....혼자 여림히 공부한다는 생각으로...하나둘씩 게시해 나가겟쓰요!!!!!

+ Recent posts