page.title=리소스 개요 @jd:body
이미지나 문자열 같은 리소스는 항상 애플리케이션 코드에서 외부화하여 독립적으로 유지해야 합니다. 리소스를 외부화하면 다양한 언어나 화면 크기와 같은 특정 기기 구성을 지원하는 대체 리소스를 제공할 수 있습니다. 이러한 기능은 Android 구동 장치를 다양한 구성에서 이용하게 되면서 점점 더 중요해지고 있습니다. 여러 가지 구성에 호환성을 제공하려면 프로젝트의 {@code res/} 디렉터리 안에 리소스를 정리해야 합니다. 이때 여러 가지 하위 디렉터리를 사용하여 리소스를 유형과 구성 기준으로 그룹화하면 좋습니다.
그림 1. 각각 기본 레이아웃을 사용하는 서로 다른 두 개의 기기입니다 (앱에서 대체 레이아웃을 제공하지 않습니다).
그림 2. 서로 다른 두 개의 기기로, 각각 다른 화면 크기에 맞게 제공된 서로 다른 레이아웃을 사용하고 있습니다.
어떤 유형의 리소스든 애플리케이션에 맞게기본값과 여러 대체 리소스를 지정할 수 있습니다.
예를 들어 기본 UI 레이아웃은 {@code res/layout/} 디렉터리에 저장되어 있더라도 화면이 가로 방향일 때 사용할 다른 레이아웃을 지정할 수도 있습니다. 이를 {@code res/layout-land/} 디렉터리에 저장하면 됩니다. Android는 기기의 현재 구성을 리소스 디렉터리 이름과 일치시켜서 적절한 리소스를 적용합니다.
그림 1은 이용 가능한 대체 리소스가 없을 경우 시스템이 서로 다른 두 개의 기기에 같은 레이아웃을 적용하는 방법을 보여줍니다. 그림 2는 같은 애플리케이션에 큰 화면용 레이아웃 리소스를 추가한 모습을 나타낸 것입니다.
다음 문서는 대체 리소스를 체계화하고, 대체 리소스를 지정하고, 애플리케이션에 액세스 하는 등의 방법에 관한 완전한 지침을 제공합니다.