
위 Activity의 생명주기를 보면 Activity가 처음 실행될 때, onCreate() 메소드가 호출되는데, 애플리케이션이 처음 시작할 때 최초로 실행되는 메소드임.
이후에는 onStart() , onResume() 메소드를 거치며 실행상태가 됨. 사용자가 해당 액티비티를 다른 액티비티로 전환 시킬 때 onPause()가 호출되고, onStop()이 호출 되어 중지 상태로 바뀌게 됨.
Activity가 소멸되는 경우에는 onDestroy()가 호출되어 액티비티가 메모리에서 사라지게 됨
onCreate() 메소드는 Activity가 생성될 때 호출되어, Activity 내의 모든 요소들을 이 메소드 내에서 초기화시킬 수 있음 UI 레이아웃을 코드상으로 동작하게 하기 위하여 setContentView()를 통해 정의해주는 메소드도 해당 메소드임.
생명 주기 동안 딱 한 번만 실행되는 메소드임
onStart() 메소드는 액티비티가 화면에 보이기 직전에 호출되는 메소드임.
화면에 진입할 때마다 실행되어야 하는 코드를 이곳에 작성하면 됨
Activity의 일부가 보일 때 호출되며, 다른 액티비티가 액티비티를 덮어버리거나 앱 사용중 전화, 문자 등으로 잠시 앱을 떠나는 등 잠시 액티비티가 일시정지 되었다가 돌아오는 경우 onResume 메소드가 호출된다.
Activity가 재개되었을 때 실행해야 하는 코드가 있다면 이곳에 작성하면 된다.
다만 일부가 보일때부터 전체가 보일 때 까지의 시간만큼만 수행되기 때문에 가벼운 작업만을 수행해야 한다. 만약 긴 작업을 수행한다면 버벅임이 생길 수 있음
LifeCycle 에는 포함되지 않지만 Activity에서는 없어선 안되는 메소드 들이다.
Activity 의 상태를 저장 및 복원하는 콜백 메소드이다. Activity의 상태를 저장한다는 것은 Activity의 모습과 자료 등을 기기의 저장 장치에 저장함을 의미함.

상태를 저장하는 메소드로써 강제로 종료되는 상황에 대비하여 Activity의 상태 정보를 저장할 수 있음. 사용자가 화면을 강제로 회전하여 시스템이 Activity 를 종료시키면 , 종료 직전에 onSaveInstanceState() 콜백 메소드가 호출되면서 Bundle 객체에 상태를 저장할 수 있음
onStop() 직전에 항상 호출됨.
onCreate() 또는 해당 메소드를 통해 Bundle 객체를 복원할 수 있음
onStart() 이후에 호출되며, Activity가 강제 종료된 후 다시 켜질 때만 불리게 됨 (Ex_ 화면회전)

Fragment는 항상 Activity 내에서 구축되어야 하며 해당 Fragment의 생명주기는 호스트 Activity의 생명주기에 직접적으로 영향을 받는다.
예를들어 Activity가 일시 정지되는 경우 , 그 안의 모든 Fragment도 일시 정지 되며 Activity가 소멸되면 모든 Fragment도 마찬가지로 소멸됨.
onCreateView() 는 Fragment가 UI를 그릴 때 호출되는 메소드이다. Layout 를 inflate 해서 반환해주고, view 객체를 얻을 수 있으므로 UI와 관련된 바인딩 작업을 실행하면된다.
Fragment의 레이아웃 루트이기 때문에 UI를 제공하지 않는 경우에는 null을 반환하면 된다.
onStart 메소드는 Activity가 시작됨 상태에 들어가면 호출되는 메소드이다. 사용자에게 Fragment가 보이게 되고, 이 메소드에서 UI를 관리하는 코드를 초기화한다.
이 메소드는 매우 빠르게 완료되고, 완료되면 Resumed(재개) 상태로 들어가 onResume() 메소드를 호출한다.