안드로이드 액티비티 생명주기 메소드
onCreate(Bundle savedInstanceState)
- 이 메소드는 액티비티 인스턴스가 최초 생성될 때 호출 , 초기화 작업을 하는장소라고 보면 된다.
onRestart()
- 액티비티가 런타임에 의해 이전에 중단되었다가 다시 시작될때 호출된다.
onStart()
- 위에서 본 두 메소드가 호출된 후에 항상 바로 호출된다. 액티비티가 액티비티 스택의 맨위로 이동하게되면 이 메소드가 호출된다음에 onResume()메소 드가 호출된다.
onResume()
- 현재의 액티비티가 액티비티 스택의 맨위에 있으며 사용자에게 보여지고 있고 상호 동작을 하는 액티비티임을 알려준다.
onPause()
- 이 메소드가 호출 된 다음에는 onResume() 이나 onStop() 메소드가 호출된다. 액티비티가 사용자에게 보여지게 된다면 onResume()을 사용자가 보지 못 한다면 onStop()메소드를 호출한다.
onStop()
- 액티비티가 사용자에게 보여지지 않은 상황이다 . 다시 사용자에게 보여지게 된다면 onRestart(), 종료가 된다면 onDestroy()메소드를 호출한다.
onDestroy()
- 이 메소드는 액티비티가 소멸 되고자 할때 호출된다. 하지만 액티비티가 종료될때 항상 이 메소드가 호출 되는것은 아니다.
onRestoreInstanceState(Bundle savedInstanceState)
- 동적 상태를 저장하고 복원하기 위해서 액티비티가 정지되었다가 다시 시작하는 경우에 onStart()메소드가 호출된 후 이 메소드가 호출되게 된다.
onCreate() 와 onStart()에서 액티비티의 초기화가 수행된 후에 이전 상테의 데이터를 복원하는 것이 좋을때 이 메소드를 사용한다.
onSaveInstanceState(Bundle outState)
- 현재의 동적상태의 데이터가 저장될수 있도록 액티비티가 소멸되기 전에 호출된다. Bundle 객체를 인자로 받으면서 저장되어야 하는 상태를 Bundle객 체에 넣는다. 그리고 이 저장된 Bundle객체는 액티비티가 다시 시작될때 onCreate()와 onRestoreInstanceState()메소드로 전달된다.