반응형

안녕하세요. 애드소프트입니다.

 

오늘은 안드로이드 개발을 하다보면 많은 액티비티(Activity)를 새롭게 호출할때가 많습니다.

 

액티비티에 대해 간단히 알아 보도록 하겠습니다.

액티비티의 개념은 화면에 표시되는 UI구성을 위해 가장 기본이 되는 요소입니다. 안드로이드 앱은

화면에 UI를 표시하기 위해 최소하나 이상의 Activity를 가져야합니다.

앱 실행시 AndroidManifest.xml을 통해 최초 실행될 Activity를 지정할 수도 있습니다.

간단히 설정하자면 현재 화면상에 표시되는 활성화된 창이라고 할 수 있습니다.

 

액티비티의 상태 변화 라이프 사이클은 다음과 같이 표시됩니다.

타원은 상태를 표시하며, 직사각형은 상태를 변경하기 위한 콜백 함수를 표시합니다.

 

출저 : 구글 Developer

 

오늘은 이 Activity를 표시하거나 종료하는 방법을 알아볼까 합니다.

 

Activity를 호출하기 위해서는 다음 두 함수를 이용합니다.

1. startActivity - 액티비티를 호출 할때 사용합니다.

2. startActivityForResult - 액티비티가 시작 될때 코드값를 전송합니다.

 

다음 함수는 Intent를 통해 제공됩니다.

 

Activity를 활성화 하기 위한 간단한 코드를 작성해 보겠습니다.

Intent newIntent = new Intent(context, JavaActivityClass.class);

//key = 문자열키, value = 문자열 값 입력
intent.puExtra(key, value);

startActivity(intent);

파라미터를 받는 쪽에서는 다음과 같이 구현됩니다.

Intent intent = getIntent();
String value = intent.getExtras().getString("key");

 

startActivityForResult를 사용하여 새로운 Activity를 사용한다면 다음과 같이 사용하시면 됩니다.

Intent newIntent = new Intent(context, JavaActivityClass.class);
startActivityForResult(intent, newIntent, requestCode.LOGIN_RESULT);

코드를 사용하기위해서는 다음 함수를 구현 하시면 됩니다.

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
	super.onActivity(requestCode, resultCode, data);
    case RequestCode.LOGIN_RESULT:
    	if(resultCode == RESULT_OK && !data) {
        	//로그인 성공시
        }else if(requestCode == RESULT_CANCELED) {
        	// 로그인 결과가 CANCEL 할 때 할일
        }
        break;
      default:
        break;
}

본 예제들은 가상으로 코딩한 내용입니다. 오타와 문법이 조금씩 다를 수 있는점 가만해 주세요 ^^;

본 예제는 새로운 Activity를 실행하면서 두가지 방법으로 간단한 결과나 파라미터를 전송하는 방법을 구현한 내용입니다.

 

 

 

 

 

 

 

 

 

반응형

+ Recent posts