이전 포스팅에서도 설명하였듯이, 프로그램을 생성하는데 사용되는 자원들(color(색깔), string(문자열), dimen(위젯들의 크기 등 .. )은 모두 .xml 파일 형태로 res 디렉터리 아래에 저장됩니다.
이번 포스팅에서는 이 자원들을 Kotlin 클래스(MainActivity)에서 참조하는 방법에 대해 다뤄보도록 하겠습니다.
R 클래스는 자동으로 생성되는 클래스로서, resource의 아이디가 배정되는 클래스입니다.
소스코드에서 resource에 접근할 때, 이 R클래스를 사용합니다.
형식) val 변수: Int = resources.getColor(R.color.colors.xml 파일에서 지정해둔 자원 name)
ex) var color: Int resources.getColor(R.color.btn1_color)
colors.xml
<resources>
<color name = "White">#FFFFFF</color>
<color name = "Red">#FF0000</color>
<color name = "Blue">#0000FF</color>
<color name = "btn1_color">#D2B48C</color>
...
</resources>
형식) val 변수: String = getString(R.string.string.xml 파일에서 지정해둔 자원 name)
ex) val string: String = getString(R.string.string.btn3)
strings.xml
<resources>
<string name = "btn1">버튼1</string>
<string name = "btn2">버튼2</string>
<string name = "btn3">버튼3</string>
<string name = "text">환영합니다</string>
...
</resources>
형식) val dimen: Float = resources.getDimension(id.dimen.dimens.xml 파일에서 지정해둔 자원 name)
__ex) `val dimen: Float = resources.getDiemension(id.dimen.dimens.textSize_medium)
dimens.xml
<resources>
<dimen name = "textSize_small">10sp</dimen>
<dimen name="textSize_medium">20sp</dimen>
<dimen name="textSize_large">30sp</dimen>
<dimen name="space_small">10dp</dimen>
<dimen name="space_medium">20dp</dimen>
<dimen name="space_large">30dp</dimen>
...
</resources>