반응형
application
- 한 개 이상의 액티비티들로 구성된다.
- 액티비티들은 application 안에서 느슨하게 묶여있다. (액티비티 1>2, 3>2 등 자유롭게 이동 할 수 있다는 뜻)
액티비티
: application을 구성하는 빌딩 블록

태스크
: 스택에 있는 액티비티 , 하나의 태스크는 스택에 있는 액티비티 들로 구성된다

액티비티 스택
- Back 키를 누르면 현재 액티비티를 제거하고 이전 액티비티로 되돌아간다.
- 사용자가 방문한 액티비티들은 어딘가에 기억

인텐트
하나의 액티비티(화면)에서 다른 액티비티(화면)로 전환 하려면 어떻게 해야하는가? -> 인텐트 사용
다른 액티비티를 시작하려면 액티비티의 실행에 필요한 여러가지 정보들을 인텐트에 실어서 보내주어야 한다.

명시적 인텐트 ( explicit intent )
- "애플리케이션 A의 컴포넌트 B를 구동시켜라"와 같이 명확하게 지정
- 실행하고자 하는 액티비티의 이름을 적어준다.
Intent intent = new Intent(this, Next_Activity.class); // 실행하고자 하는 액티비티의 이름 : Next_Activity.class startActivitty(intent); |






액티비티에서 결과 받기

값을 저장하고, 값을 읽는 메소드

예제
: 메인 액티비티에서 버튼을 누르면 서브 액티비티 시작
-> 서브 액티비티에서 문자열을 입력하고 "입력완료" 버튼을 누르면 서브 액티비티는 문자열을 메인 액티비티로 전달한 후에 종료된다.
-> 메인 액티비티에서 이 문자열을 받아서 텍스트뷰를 통해 화면에 표시한다.



암시적 인텐트 ( implict intent )
- "지도를 보여줄 수 있는 컴포넌트이면 어떤 것이라도 좋다"
- 어떤 작업을 하기를 원하지만 그 작업을 담당하는 컴포넌트의 이름을 명확히 모르는 경우에 사용

액션의 종류
상수 | 타겟 컴포넌트 | 액션 |
ACTION_VIEW | 액티비티 | 데이터를 사용자에게 표시한다. |
ACTION_EDIT | 액티비티 | 사용자가 편집할 수 있는 데이터를 표시한다. |
ACTION_MAIN | 액티비티 | 태스크의 초기 액티비티로 설정한다. |
ACTION_CALL | 액티비티 | 전화 통화를 시작한다. |
ACTION_SYNC | 액티비티 | 모바일 장치의 데이터를 서버 상의 데이터와 일치시킨다. |
ACTION_DIAL | 액티비티 | 전화 번호를 누르는 화면을 표시한다. |
암시적인 인턴트의 예

반응형