ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 액티비티 생명주기
    안드로이드/Tip 2011. 5. 8. 20:47
    public class Activity extends ApplicationContext 
    { protected void onCreate(Bundle savedInstanceState); protected void onStar(); protected void onRestart(); protected void onResume(); protected void onPause(); protected void onStop(); protected void onDestroy(); }

     

    onCreate(Bundle) : 액티비티가 처음 시작할 때 호출된다. 사용자 인터페이스를 만드는 등의 일회적 초기화 실행에 사용된다.

                                   onCreate()는 널(null) 값 또는 onSaveInstanceState() 메서드에 의해

                                   저장된 상태 정보 중 한 가지의 매개변수를 갖는다.

     

    onStart() : 액티비티가 사용자에게 곧 보여질 것임을 나타낸다.

     

    onResume() : 액티비티가 사용자와 상호작용을 시작할 수 있을 때 호출된다.

                          애니메이션과 음악을 시작하기 좋은 곳이다.

     

    onPause() : 액티비티가 배경으로 전환될 때 실행되는데, 주로 다른 액티비티가 이 프로그램 앞에 놓이게 됨으로써 일어난다.

                        데이터베이스 기록 수정 등 프로그램의 지속적 상태 정보를 이곳에 저장해 놓는다.

     

    onStop() : 액티비티가 사용자에게 더 이상 보여지지 않을 때 호출되며, 액티비티는 한동안 사용되지 않는다.

                     메모리가 얼마 남지 않았다면 onStop()은 호출되지 않고 시스템이 프로세스를 종료해 버릴 수 있다.

     

    onRestart() : 이 메서드가 호출되면 여러분의 액티비티가 정지 상태에서 다시 디스플레이된다.

     

    onDestory() : 액티비티가 소멸되기 직전에 호출된다. 메모리가 얼마 남지 않았다면 onDestroy()는

                          호출되지 않고 시스템이 프로세스를 종료해 버릴 수 있다.

     

    onSaveInstanceState(Bundle) : 텍스트 필드 내의 커서 위치 등의 인스턴스별 상태를 액티비티가 절약하도록 이 메서드가 호출된다.

                                                      디폴트 구현 값이 모든 사용자 인터페이스 제어 상태를 자동으로 저장하므로 대개 재정의할

                                                      필요 없다.

     

    onRestoreInstanceState(Bundle) : 메서드가 미리 저장해 둔 상태로부터 액티비티가 다시 초기화될 때 호출된다.

                                                           디폴트 구현 값이 여러분의 사용자 인터페이스 상태를 복원한다.

      

    새 엑티비티에 사용될 공간 확보를 위해, 포어그라운드에 있는 비활성 액티비티가 정지되거나

    액티비티를 담고 있는 리눅스 프로세스가 중지될 수 있다.

     

    이와 같은 상황은 일반적으로 발생할 수 있으니 애플리케이션 디자인 단계에서부터 고려해야 한다.

    액티비티에서 마지막으로 호출되는 메서드가 onPause() 일 수 있으므로 다음번에 필요할 만한 데이터는

    onPause()에 저장해 둔다.

     


    댓글

COPYRIGHT 2010 EpoNg. ALL RIGHTS RESERVED.