안드로이드 리소스

k_hyun·2023년 1월 28일
0

앱 리소스

개발자가 직접 추가한 리소스를 의미한다.

리소스 종류

layout

레이아웃 XML 파일을 저장하는 디렉터리

drawble

이미지 리소스를 저장하는 디렉터리

mipmap

앱 실행 아이콘의 이미지 리소스를 저장하는 디렉터리

values

값으로 이용되는 리소스를 저장하는 디렉터리
문자열, 색상, 크기, 스타일, 배열 등의 값을 XML로 저장 할 수 있다.

values의 리소스 파일은 파일명이 R파일에 식별자로 등록되지 않고 속성값이 등록된다.
따라서 아래와 같이 사용한다.

[strings.xml]

[activity_main.xml]

[MainActivity.kt]

color

특정 뷰의 상태를 표현하고 그 상태에 적용되는 색상을 등록할 때 사용한다.
예를 들어, 어떤 버튼을 눌렀을 때, 누르지 않았을 때의 색상을 리소스로 등록하는것.

front

글꼴 리소스를 저장한다.

플랫폼 리소스

안드로이드 플랫폼이 제공하는 리소스

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와 유사하며 글꼴 크기에 적용

0개의 댓글