
onCreate
- 호출 시점 : 앱이 새로 실행되거나, 앱을 종료하지 않은 상태에서 다른 앱이 실행되면서 안드로이드가 메모리 확보를 위해 강제로 프로세스를 죽였다가 back 버튼으로 해당 앱으로 돌아오려 할 경우. 즉, Activity가 메모리에 완전히 다시 올라갈 경우
- 실행할 사항 : 모든 Activity에서 초기화 상황을 확인하고 설정을 읽고 적용하는 등의 기본적인 초기화 상황을 수행해야 한다. 앱이 메모리에서 내려간 경우, 설정 사항도 모두 없어지기 때문에 모든 Activity에서 초기화를 할 수 있어야 한다. 다음으로 각종 Activity view 객체와 이벤트 핸들러를 초기화한다. 세번째로 Intent를 확인하고 각종 모델과 데이터 객체를 초기화한다. 마지막으로 이전에 종료된 상태를 복구하기 위해 Bundle을 이용해 필요한 데이터나 객체를 복구한다
- 호출 시점 : onCreate 실행 후, 또는 onRestart 실행 후 호출된다.
- 실행할 사항 : 연산이 필요할 경우 연산을 수행한다.
- 호출 시점 : onStart 다음, 또는 다른 Activity 실행을 위해 onPause가 실행된 다음 호출. onResume 이후에 Activity가 실제로 동작함
- 실행할 사항 : 화면에 내용을 출력한다. 각종 View 객체에 출력할 값을 세팅한다.
- 호출 시점 : 다른 Activity가 실행되면 현재의 Activity를 임시중단시킨다. 화면에 여전히 보여지는 상태(예를 들어 다이얼로그 팝업이 뜨는 경우)에는 onPause까지 실행된다.
- 실행할 사항 : 별다른 사항이 없다. 현재 상태 저장을 위한 기능은 안드로이드가 알아서 한다. 추가로 저장이 필요한 사항은 onSaveInstanceState 메소드에서 구현한다. 필요할 경우 구현한다.
- 호출 시점 : 화면에 더 이상 보여지지 않을 경우 호출된다.
- 실행할 사항 : 별다른 사항이 없다. 필요할 경우 구현한다.
- 호출 시점 : Activity가 완전히 종료될 때 호출된다.
- 실행할 사항 : 별다른 사항이 없다. 필요할 경우 구현한다.
- 호출 시점 : onStop으로 Activity가 화면이 완전히 가려졌다가 다시 보여질 때 호출된다.
- 실행할 사항 : 별다른 사항이 없다. 필요할 경우 구현한다.
※ A Activity 실행 중 다른 신호가 들어왔을 때의 반응 ( Log cat을 통해 확인 )
onCreat A - onResum A - Intent - onPause A - onCreat B - onStop A
public class TextTestActivity extends Activity {
static final String TAG = "ActParent";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
Log.i(TAG,"onCreate");
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
// Button btn = (Button)findViewById(R.id.bt);
public void OnClick(View v){
Log.i(TAG, "startActivity");
Intent intent = new Intent(this, TextTestchild.class);
startActivity(intent);
}
public void onResume(){
super.onResume();
Log.i(TAG,"onResum");
}
public void onPause(){
super.onPause();
Log.i(TAG,"onPause");
}
public void onRestart(){
super.onRestart();
Log.i(TAG,"onRestart");
}
public void onStop(){
super.onStop();
Log.i(TAG,"onStop");
}
public void onDestroy(){
super.onDestroy();
Log.i(TAG,"onDestroy");
}
}
'안드로이드' 카테고리의 다른 글
broadcast receiver java code로 등록 (0) | 2011.07.25 |
---|---|
MediaPlayer (0) | 2011.07.19 |
startActivityForResult() (0) | 2011.07.12 |
Intents and IntentsFilters (0) | 2011.07.12 |
9.png (0) | 2011.07.12 |