개발자가 직접 추가한 리소스를 의미한다.
레이아웃 XML 파일을 저장하는 디렉터리
이미지 리소스를 저장하는 디렉터리
앱 실행 아이콘의 이미지 리소스를 저장하는 디렉터리
값으로 이용되는 리소스를 저장하는 디렉터리
문자열, 색상, 크기, 스타일, 배열 등의 값을 XML로 저장 할 수 있다.
values의 리소스 파일은 파일명이 R파일에 식별자로 등록되지 않고 속성값이 등록된다.
따라서 아래와 같이 사용한다.
[strings.xml]
[activity_main.xml]
[MainActivity.kt]
특정 뷰의 상태를 표현하고 그 상태에 적용되는 색상을 등록할 때 사용한다.
예를 들어, 어떤 버튼을 눌렀을 때, 누르지 않았을 때의 색상을 리소스로 등록하는것.
글꼴 리소스를 저장한다.
안드로이드 플랫폼이 제공하는 리소스
android.R 파일을 이용해 플랫폼 리소스를 이용할 수 있다.
XML에서 앱 리소스는 @drawble/save 로 작성하는 것을
플랫폼 리소스에서는 @android:drawble/save로 이용한다.
어떤 리소스를 특정 환경에서만 적용되도록 설정하는 것
ex) 가로/세로 화면, 국가에 따른 언어 설정, 휴대폰 크기/종류에 따른 이미지 선택
기기 크기에 맞는 이미지를 선택한다. 오른쪽 괄호는 해당 파일이 있는 폴더를 의미한다.
크기가 다양한 기기와 호환하는 화면을 만들어야 한다.
ldpi
- 저밀도 화면 ~ 120dpi
mdpi
- 중밀도 화면 ~ 160dpi
hdpi
- 고밀도 화면 ~ 240dpi
xhdpi
- 초고밀도 화면 ~ 320dpi
xxhdpi
- 초초고밀도 화면 ~ 480dpi
xxxhdpi
- 초초초고밀도 화면 ~ 640dpi
dpi는 dots per inch, 1인치 안에 있는 도트의 개수를 의미한다.
안드로이드에서는 논리적 단위인 dp와 sp로 크기를 지정하길 권장한다.
dp
- 스크린의 물리적 밀도에 기반을 둔 단위
sp
- dp와 유사하며 글꼴 크기에 적용