Mission Completed

Activity Life Cycle 본문

개발/Android 개발

Activity Life Cycle

삼지안☆ 2013. 6. 24. 12:05

여기서 쓰인 번호는 사용하는 기기마다 약간의 차이는 있을 수 있으나,

1번과 2번은 불변이다.


ActivityA Life Cycle

(1) onCreate() > (2) onStart() > (3) onResume() > (4) 대기 >

finish() > (5) onPause > (6) onStop() > onDestroy()

 

만약 ActivityA의 대기모드에서 버튼을 눌러 ActivityB로 넘어갈 경우,

ActivityA는 일시정지 되고 ActivityB가 시작된다.

ActivityB Life Cycle

(7) onCreate() > (8) onStrart() > (9) onResume > 대기 > (10) fisnish() >

(11) onPause() > (12) onStop() > (13) onDestroy()

 

ActivityB가 종료된 후, ActivityA로 돌아오는데, 이때 onStart()부터 다시 시작한다.

ActivityA Life Cycle

(2) -> (14)  onStart()

onCrate()는 명시적으로 finish() 가 쓰이지 않는이상 종료되지 않는다.

onStart()는 이유불문하고 화면이 구동될 때마다 실행된다.

 

A.class -> B.class

Intent intent = new Intent (this, B.class);
intent.putExtra(key, value);
startActivityForResult(intent, 100);
//(100은 페이지 번호를 의미하는 숫자이다.
// startActivity()가 아닌 startActivityForResult()메소드를 사용하는 이유:
//  ActivityB에서 finish()가 실행되었을 때, onActivityResult(){...}를 사용하기 위해서이다.)
Intent data = new Intent();
data.putExtra(key, value);
...
setResult("성공, 실패", data);
finish();
onActivityResult(...){...}


'개발 > Android 개발' 카테고리의 다른 글

Android Google맵 필기자료  (0) 2013.07.05
Android ImageDownloader  (0) 2013.06.28
asynctask - Android XML thread  (0) 2013.06.27
Android with SQLite  (0) 2013.06.26
Android Log 찍는 법  (0) 2013.06.05