* 자원이란 ?
응용프로그램은 기능성과 자원이라는 두 부분으로 구성된다.
기능성(functionality)-응용프로그램의 행동을 결정하는 코드
자원(resource)-텍스트 문자열, 이미지, 아이콘, 오디오, 동영상 등 응용프로그램이 사용하는 자산(asset)을 말한다.
* 안드로이드 자원의 저장 위치와 저장 방식
자원 파일들은 Java클래스 파일들과는 개별적으로 저장된다. 일반적인 종류의 자원들은 대부분 XML 파일 안에 저장하지만, 이미지 파일 등의 원본 자료 파일들은 그 자체로 저장 할 수도 있다.
* 자원 디렉터리 계통구조
모든 자원은 프로젝트 /res 디렉터리 안의 하위 디렉터리들에 배치된다. 하위 디렉터리 이름은 소문자로만 구성된다. 하위 디렉터리들은 자원의 형식을 나타낸다. 즉, 같은 종류의 자원들은 같은 하위 디렉터리에 저장된다.
자원 하위 디렉터리 |
용도 |
/res/drawable/ |
그래픽 자원들 |
/res/layout/ |
사용자 인터페이스 자원들, 위젯들 |
/res/values/ |
문자열, 색상값 같은 단순 자료들 |
* 자원의 형식
모든 자원 파일은 이름이 영문 소문자와 숫자, 밑줄로만 이루어져야한다.
[안드로이드 SDK가 지원하는 자원들의 형식과 저장 위치]
|
자원 형식 |
필수 디렉터리 |
파일 이름 |
핵심 XML 요소 이름 |
문자열 |
/res/values/ |
strings.xml (권장) |
<string> |
그래픽 |
/res/drawable/ |
png,jpg,gif,xml 확장명 |
그래픽파일, xml파일 |
레이아웃 파일 |
/res/layout/ |
파일이름.xml |
레이아웃 요소이어야함. |
* 코드에서 자원에 접근하기
R.java 파일에 정의되어 있는 클래스 R과 그 하위 클래스들을 이용한다.
R.string.hello
이 변수가 실제로 hello라는 이름의 문자열 자원의 실제 문자열을 담고 있는 것은 아니고, 해당 자원의 값을 얻기 위한 식별자 역할을 한다.
String myString = getResources().getString(R.string.hello);
이 코드는 hello라는 이름의 문자열 자원의 실제 문자열을 가져오는 코드이다.
'프로그래밍언어 > Android Programming' 카테고리의 다른 글
안드로이드 GEOpoint 경도위도 쉽게 찾을 수 있는 곳 (0) | 2011.07.12 |
---|---|
안드로이드 비디오뷰를 사용해보자! (0) | 2011.06.28 |
안드로이드 텍스트뷰를 HTML 로 꾸미기 (0) | 2011.05.20 |
안드로이드 어댑터뷰 이해하기! (0) | 2011.04.11 |
[AndroiStudy]레이아웃에 대한 이해 (0) | 2011.04.05 |