Be Developer

[Android] 액티비티의 생성, 선언, 시작, 종료 본문

Android

[Android] 액티비티의 생성, 선언, 시작, 종료

yujin_dev 2019. 4. 29. 11:10
반응형

액티비티 생성

- Activity의 서브클래스 생성

- 액티비티 생명 주기의 다양한 상태 간 액티비티가 전환될 때 시스템이 호출하는 콜백 메서드 구현

    - onCreate()

      1. 반드시 구현

      2. 시스템은 액비티비를 생성할 때 이 메서드 호출

      3. 액티비티의 필수 구성 요소 초기화

      4. setContentView() 메서드를 호출해야 액티비티의 사용자 인터페이스 레이아웃 정의

 

    - onPause()

      1. 사용자가 액티비티를 떠난다는 첫 번째 신호 (이 메서드가 호출되었을 때 항상 액티비티가 소멸 중이라는 뜻은 아님)

      2. 현재 사용자 세션을 넘어서 지속되어야 하는 변경 사항을 커밋하려면 이곳에서 진행

 

사용자 인터페이스 구현

- 한 액티비티에 대한 사용자 인터페이스는 뷰 계층 (View 클래스에서 파생된 객체가 제공)

- 위젯 : 화면에 시각적 및 대화형 요소를 제공하는 뷰

   ex.) 버튼, 텍스트 필드, 체크박스 등

- 레이아웃 : ViewGroup에서 파생된 뷰

   ex.) LinearLayout, ConstraintLayout 등

- 뷰를 사용하여 레이아웃을 정의하는 가장 보편적인 방식은 애플리케이션 리소스에 저장된 XML 레이아웃 파일을 사용하는 것

 

매니페스트에서 액티비티 선언

- 시스템에서 액티비티에 액세스할 수 있게 하려면 매니페스트 파일에 선언

- <application> 요소 하위 항목에 <activity> 요소 추가

- android:name

   - 필수 특성

   - 액티비티의 클래스 이름 지정

   - 애플리케이션 게시 후 이름 변경 불가

- 인텐트 필터 사용

   - <intent-filter>

   - 다른 애플리케이션 구성 요소가 이를 활성화하는 방법을 선언

   - 다른 애플리케이션에서 사용할 수 없게 하고자 하는 액티비티에는 인텐트 필터 X -> 명시적 인텐트 사용

 

액티비티 시작

- startActivity()에 Intent 전달

- Intent는 시작하고자 하는 액티비티나 수행하고자 하는 작업의 유형을 설명

 

결과에 대한 액티비티 시작

- startActivityForResult()

- onActivityResult()

 

액티비티 종료

- finish() : 해당 액티비티 종료

- finishActivity() : 이전에 시작한 액티비티 종료

반응형
Comments