The Android Developer Challenge is back! Submit your idea before December 2.

템플릿에서 코드 추가

Android 스튜디오에서는 개발자가 디자인과 기능이 뛰어난 앱을 효과적으로 생성할 수 있도록 Android 설계 및 개발 관련 권장사항을 따르는 코드 템플릿을 제공합니다. 개발자는 템플릿을 사용하여 새로운 앱 모듈, 개별 활동 또는 기타 특정한 Android 프로젝트 구성요소를 생성할 수 있습니다.

일부 템플릿에는 탐색 창이나 로그인 화면과 같은 흔히 사용되는 컨텍스트에 활용할 수 있는 시작 코드를 제공합니다. 이러한 앱 모듈 및 활동 템플릿은 처음으로 프로젝트를 생성하거나 기존 프로젝트에 새로운 앱 모듈을 추가하거나 앱 모듈 내에 새 활동을 추가할 때 선택할 수 있습니다.

활동 외에도, 템플릿을 사용하여 다른 Android 프로젝트 구성요소를 기존 앱에 추가할 수 있습니다. 이러한 템플릿에는 코드 구성요소(예: 서비스 및 프래그먼트)와 코드가 아닌 구성요소(예: 폴더 및 XML 파일)가 모두 포함되어 있습니다.

이 페이지에서는 활동과 같은 Android 프로젝트 구성요소를 프로젝트에 추가하는 방법과 Android 스튜디오에서 제공되는 템플릿 중 흔히 사용되는 활동 템플릿에 관해 설명합니다. 참고로, 대부분의 템플릿은 Android 지원 라이브러리를 활용하여 머티리얼 디자인을 기반으로 하는 사용자 인터페이스 원칙을 포함하고 있습니다.

프로젝트 구성요소 추가

그림 1. 템플릿 메뉴입니다. File > New 메뉴를 클릭하거나 Project 창에서 마우스 오른쪽 버튼을 클릭하여 액세스할 수 있습니다.

Android 스튜디오에서 제공되는 템플릿 목록은 계속해서 확장되고 있습니다. Android 스튜디오는 그림 1에 표시된 것처럼 Activity 또는 XML 파일과 같이 추가되는 구성요소 유형별로 템플릿을 그룹화합니다.

Project 창을 통해 템플릿을 사용하여 Android 프로젝트 구성요소를 추가할 수 있습니다. 새 구성요소를 추가하려는 폴더를 마우스 오른쪽 버튼으로 클릭하고 New를 선택합니다. 그림 1에 표시된 것처럼, 클릭한 폴더에 추가할 수 있는 구성요소에 따라 템플릿 유형 목록이 표시됩니다.

추가할 템플릿을 선택하면 해당하는 마법사 창이 표시되고, 이 창에 구성요소의 설정 정보(예: 이름)를 묻는 메시지가 표시됩니다. 구성 정보를 입력한 후에는 Android 스튜디오가 새 구성요소의 파일을 생성하고 엽니다. 또한 Gradle 빌드를 실행하여 프로젝트를 동기화합니다.

Android 스튜디오의 File > New 메뉴를 사용하여 새 Android 프로젝트 구성요소를 만들 수도 있지만 Project 창에서 원하는 폴더로 이동하면 올바른 위치에 구성요소를 만들 수 있습니다.

활동 템플릿 선택

템플릿이 가장 흔히 사용되는 경우 중 하나는 기존 앱 모듈에 새 활동을 추가할 때입니다. 예를 들어, 앱 사용자를 위한 로그인 화면을 생성하려면 로그인 활동 템플릿을 사용하여 활동을 추가합니다.

이 섹션에서는 스마트폰 및 태블릿 앱에서 흔히 사용되는 활동 템플릿에 대해 설명합니다. Android 스튜디오는 Wear OS, Android TV, Cloud App Engine을 포함하여 다양한 앱 모듈 유형을 위한 템플릿도 제공합니다. 앱 모듈을 생성할 때 다양한 모듈 유형을 위한 템플릿을 볼 수 있습니다. Google AdMob 광고 및 Google 지도와 같이 특정 API와 더욱 밀접한 관련이 있는 모듈 및 활동을 위한 템플릿도 있습니다.

다음 스마트폰 및 태블릿 템플릿에서는 계정에 로그인, 세부정보가 포함된 항목 목록 제공, 긴 텍스트 블록에서 스크롤과 같은 특정 사용 컨텍스트를 위한 코드 구성요소를 제공합니다. 이러한 템플릿은 각각 전체 앱 모듈 또는 개별 활동 역할을 할 수 있습니다.

Basic Activity

이 템플릿은 앱 바와 플로팅 작업 버튼이 포함된 단순한 앱을 생성합니다. 흔히 사용되는 UI 구성요소를 제공하여 프로젝트의 시작점 역할을 합니다.

이 템플릿에는 다음이 포함되어 있습니다.

Bottom Navigation Activity

이 템플릿은 사용자가 한 번의 탭으로 최상위 수준 뷰를 쉽게 살펴보고 서로 간에 전환할 수 있도록 활동에 관한 표준 하단 탐색 메뉴를 제공합니다. 애플리케이션에 3~5개의 최상위 대상이 있을 경우 이 템플릿을 사용합니다. 자세한 내용은 하단 탐색 구성요소 디자인 가이드라인을 참조하세요.

이 템플릿에는 다음이 포함되어 있습니다.

  • AppBar
  • 하단 탐색을 위한 샘플 레이아웃이 포함된 단일 레이아웃 파일

Empty Activity

이 템플릿은 샘플 텍스트 콘텐츠가 있는 단일 레이아웃 파일과 빈 활동을 생성합니다. 앱 모듈 또는 활동을 빌드할 때 맨 처음부터 작업을 시작할 수 있습니다.

이 템플릿에는 다음이 포함되어 있습니다.

  • 텍스트 콘텐츠가 있는 단일 레이아웃 파일

Fullscreen Activity

이 템플릿은 기본 전체 화면 뷰와 표준 사용자 인터페이스(UI) 컨트롤로 구성된 뷰를 번갈아 표시하는 앱을 생성합니다. 전체 화면 뷰가 기본 화면이며, 사용자는 기기 화면을 터치하여 표준 뷰를 활성화할 수 있습니다.

이 템플릿에는 다음이 포함되어 있습니다.

  • 표준 뷰 요소를 숨기기 위한 터치 리스너 구현
  • 표준 뷰에 표시되지만 아무 작업도 수행하지 않는 버튼
  • 표준 뷰를 위한 AppBar
  • 전체 화면 뷰와 표준 뷰 요소를 위한 프레임 레이아웃이 모두 있는 단일 레이아웃 파일

Login Activity

이 템플릿은 표준 로그인 화면을 생성합니다. 사용자 인터페이스로 이메일 및 비밀번호 필드와 로그인 버튼이 포함되어 있습니다. 앱 모듈 템플릿보다 활동 템플릿으로 더 많이 사용됩니다.

이 템플릿에는 다음이 포함되어 있습니다.

  • 기본 사용자 인터페이스 스레드와 별도로 네트워크 작업을 처리하기 위한 AsyncTask 구현
  • 네트워크 작업 동안 표시되는 진행 상태 표시기
  • 다음과 같은 권장 로그인 UI가 포함된 단일 레이아웃 파일
    • 이메일 및 비밀번호 입력 필드
    • 로그인 버튼

Master/Detail Flow

이 템플릿은 항목 목록 표시와 개별 항목의 세부정보를 보여 주는 표시를 모두 포함하는 앱을 생성합니다. 목록 화면에 표시된 항목을 클릭하면 항목의 세부정보가 있는 화면이 열립니다. 이 두 가지 표시의 레이아웃은 앱을 실행하는 기기에 따라 결정됩니다.

이 템플릿에는 다음이 포함되어 있습니다.

  • 항목 목록을 나타내는 활동
  • 개별 항목의 세부정보를 표시하기 위한 활동 및 프래그먼트 옵션
  • 각 화면의 FloatingActionButton
  • 항목 세부정보 화면을 위한 접기 방식 툴바
  • 다양한 기기 설정을 위한 대체 리소스 레이아웃 파일

이 템플릿은 Basic Activity에서 생성하는 항목과 함께 탐색 창 메뉴를 생성합니다. 탐색 메뉴는 앱의 왼쪽에서 오른쪽으로 펼쳐지고 일반 앱 바와 더불어 표시됩니다.

이 템플릿에는 다음이 포함되어 있습니다.

  • DrawerLayout, 해당하는 이벤트 핸들러, 예제 메뉴 옵션이 포함된 탐색 창 구현
  • AppBar
  • FloatingActionButton
  • Basic Activity 템플릿의 레이아웃 파일과 탐색 창 및 탐색 창 헤더의 레이아웃 파일

Scrolling Activity

이 템플릿은 긴 텍스트 콘텐츠를 위한 스크롤 뷰와 접기 방식 툴바가 있는 앱을 생성합니다. 페이지를 아래로 스크롤하면 헤더 역할을 할 수 있는 툴바가 자동으로 축소되고 플로팅 작업 버튼이 사라집니다.

이 템플릿에는 다음이 포함되어 있습니다.

Settings Activity

이 템플릿은 앱의 사용자 환경설정 또는 설정을 표시하는 활동을 만듭니다. PreferenceActivity 클래스를 확장하며 앱 모듈 템플릿보다 활동 템플릿으로 더 많이 사용됩니다.

이 템플릿에는 다음이 포함되어 있습니다.

  • PreferenceActivity를 확장하는 활동
  • 표시되는 설정을 정의하는 XML 파일(프로젝트의 res/xml/ 디렉터리에 있음)

Tabbed Activity

이 템플릿은 여러 섹션, 스와이프 탐색 및 앱 바가 포함된 앱을 생성합니다. 섹션은 왼쪽 및 오른쪽으로 스와이프하여 탐색할 수 있는 항목 사이의 프래그먼트로 정의됩니다.

이 템플릿에는 다음이 포함되어 있습니다.

  • AppBar
  • FragmentPagerAdapter를 확장하고 각 섹션에 관한 프래그먼트를 생성하는 어댑터
  • 섹션 간 스와이프를 지원하는 레이아웃 관리자인 ViewPager 인스턴스
  • 2개의 레이아웃 파일: 활동 관련 파일과 개별 프래그먼트 관련 파일