프로그래밍/안드로이드

안드로이드 리소스파일 (Resource)

Terry Cho 2015. 8. 9. 23:08

안드로이드 리소스 파일 개요


조대협 (http://bcho.tistory.com)


안드로이드 프로젝트에서 소스 코드 이외에 이미지나 디자인 레이아웃등의 기타 리소스등을 코드와 분리해서 취급한다.


이렇게 리소스를 코드와 분리해서 사용하는 이유는, 조금 더 유연하게 애플리케이션을 개발하게 하기 위함이다. string과 같은 문자열을 별도의 리소스 파일에서 관리함으로써, 애플리케이션 수정 없이 string 리소스 파일에만 문자열을 추가함으로 간단하게 다국어를 지원할 수 있다.


리소스는 크게 7가지 타입의 리소스가 있고, “/res” 디렉토리에 저장된다. 



Layout Resource (뷰 리소스)

애플리케이션 UI의 배치 에 대한 내용을 XML 형태로 정의하여 저장한다. res/layout 아래와 XML 형태로 저장되며, R.layout으로 접근이 가능하다.


Animation Resource (애니메이션 리소스)

안드로이드에서 애니메이션 기능을 구현하는데 사용되는 설정들이 저장된다. res/anim에 XML로 정의되며 R.anim 이라는 전역 변수를 통해서 접근이 가능하다.


Drawable Resource (그래픽 리소스)

res/drawable 디렉토리에 저장되는 gif,png와 같은 이미지나,  기타 화면에 그려지는 그래픽 관련 리소스들을 저장한다. 이미지 뿐만 아니라, 레이아웃 리스트등의 XML 등 여러 관련 리소스를 저장 하며 R.drawable 을 통해서 접근이 가능하다.


Color State List Resource (칼라 리소스)

res/color 디렉토리 안에 XML 형태로 저장되며, R.color 를 통해서 접근이 가능하다. 버튼이나 글자등의 색을 정의한다.


Menu Resource (메뉴 리소스)

res/menu 디렉토리 내에 XML 형태로 저장되며, Popup 이나 Option과 같은 메뉴를 정의하는 리소스들이 저장된다. R.menu를 이용하여 접근이 가능하다.


String Resource (문자열 리소스)

res/values에 XML 형태로 저장된다. 



위에서 간략하게 정리했지만, 각 리소스안에는 더 세부적인 설정들이 여러 파일로 저장된다. 조금 더 자세한 내용은 http://developer.android.com/guide/topics/resources/available-resources.html 를 참고하기 바란다.