2 분 동안 Android Activity 라 이 프 사이클 에 대한 상세 한 설명 을 철저히 이해 할 수 있 습 니 다.
Activity 는 응용 프로그램 Context 와 같은 종 류 를 계승 한 것 입 니 다.우 리 는 다음 과 같은 방법 을 다시 쓸 수 있 습 니 다.다음 과 같은 코드 입 니 다
public class Activity extends ApplicationContext {
protected void onCreate(Bundle savedInstanceState);
protected void onStart();
protected void onRestart();
protected void onResume();
protected void onPause();
protected void onStop();
protected void onDestroy();
}
여러분 들 이 더 잘 이해 할 수 있 도록 저 는 간단하게 Demo 를 썼 습 니 다.Activity 주 기 를 모 르 는 친구 들 은 직접 실천 할 수 있 습 니 다.여러분 들 은 제 절차 에 따라 하 세 요.첫 번 째 단계:안 드 로 이 드 프로젝트 를 새로 만 듭 니 다.저 는 Activity Demo 라 고 명명 합 니 다.두 번 째 단계:Activity Demo.java 를 수정 합 니 다.코드 는 다음 과 같 습 니 다
package com.tutor.activitydemo;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class ActivityDemo extends Activity {
private static final String TAG = "ActivityDemo";
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.e(TAG, "start onCreate~~~");
}
@Override
protected void onStart() {
super.onStart();
Log.e(TAG, "start onStart~~~");
}
@Override
protected void onRestart() {
super.onRestart();
Log.e(TAG, "start onRestart~~~");
}
@Override
protected void onResume() {
super.onResume();
Log.e(TAG, "start onResume~~~");
}
@Override
protected void onPause() {
super.onPause();
Log.e(TAG, "start onPause~~~");
}
@Override
protected void onStop() {
super.onStop();
Log.e(TAG, "start onStop~~~");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.e(TAG, "start onDestroy~~~");
}
}
세 번 째 단계:상기 프로젝트 를 실행 합 니 다.효과 도 는 다음 과 같 습 니 다.(특별한 것 이 없습니다)핵심 은 Logcat 창 에 있 습 니 다.만약 에 Logcat 를 사용 하지 않 는 다 면 제 글 을 보 세 요Android 개발 노트:Log.v,Log.d,Log.i,Log.w,Log.e)우리 가 응용 프로그램 을 열 었 을 때 선후 로 onCreate()->onStart()->onResume 세 가지 방법 을 실 행 했 습 니 다.LogCat 창 을 보면 다음 과 같 습 니 다.
BACK 키:BACK 키 를 누 르 면 이 프로그램 이 끝 납 니 다.이 때 우 리 는 onPause()->onStop()->onDestory()세 가지 방법 을 사용 할 것 입 니 다.아래 그림 과 같 습 니 다.
HOME 키:우리 가 프로그램 을 열 었 을 때,예 를 들 어 브 라 우 저,나 는 NBA 뉴스 를 조회 하고 있 었 다.반 을 보 았 을 때 나 는 갑자기 노래 를 듣 고 싶 었 다.이때 우 리 는 HOME 키 를 누 른 다음 에 음악 프로그램 을 열 었 다.그리고 우리 가 HOME 를 눌 렀 을 때 Activity 는 선후 로 onPause()->onStop()이라는 두 가지 방법 을 실 행 했 는데 이때 응용 프로그램 은 소각 되 지 않 았 다.다음 그림 에서 보 듯 이:
그리고 우리 가 Activity Demo 응용 프로그램 을 다시 시작 할 때 선후 로 onRestart()->onStart()->onResume()세 가지 방법 을 실 행 했 습 니 다.다음 그림 과 같 습 니 다.
여기 서 우 리 는 문 제 를 일 으 킬 것 이다.우리 가 HOME 키 를 누 른 다음 에 Activity Demo 응용 프로그램 에 들 어 갈 때 우리 의 응용 상 태 는 HOME 키 를 누 르 기 전의 상태 와 같 아야 한다.마찬가지 로 이해 하기 편리 하도록 여기 서 나 는 Activity Demo 의 코드 를 수정 하 는 것 이 바로 EditText 를 추가 하 는 것 이다.네 번 째 단계:main.xml 레이아웃 파일 수정(EditText 추가),코드 는 다음 과 같 습 니 다.
4.567916.이때 홈 버튼 을 누 르 고 Activity Demo 프로그램 을 다시 시작 할 수 있 습 니 다.이때 EditText 에 우리 가 입력 한'Frankie'라 는 글자 가 없습니다.다음 그림 과 같 습 니 다.
이것 은 분명히 합 격 된 응용 프로그램 이 라 고 할 수 없 기 때문에 우 리 는 Activity 몇 가지 방법 에서 스스로 실현 해 야 한다.다음 과 같은 여섯 번 째 단 계 는 Activity Demo.자바 코드 를 다음 과 같이 수정 해 야 한다
Logcat , Logcat Log (Log.v,Log.d,Log.i,Log.w,Log.e), onCreate()->onStart()->onResume , LogCat :
BACK :
BACK , , onPause()->onStop()->onDestory() , :
HOME :
, , NBA , , , HOME , , HOME ,Activity onPause()->onStop() , 。 :
ActivityDemo , onRestart()->onStart()->onResume() , :
, HOME , ActivityDemo , HOME , , ActivityDemo , EditText。
: main.xml ( EditText), :
일곱 번 째 단 계 는 Activity Demo 프로그램 을 다시 실행 하고 다섯 번 째 단 계 를 반복 한다.우리 가 HOME 키 를 누 를 때 응용 프로그램 을 다시 시작 할 때EditText 에 마지막 으로 입력 한"Frankie"라 는 글자 가 있 습 니 다.아래 그림 과 같 습 니 다.OK,대공 이 거의 완성 되 었 습 니 다.이때 여러분 들 은 위 에서 Activity 생명주기 도 를 보 실 수 있 습 니 다.저 는 여러분 들 이 Activity 의 생명주기 에 대해 완전히 알 고 계 실 거 라 고 생각 합 니 다.아 셨 는 지 모 르 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.