가변텍스트로 리소스 접근하기
android.content.res.Resources.getIdentifier( name, defType, android.content.ContextWrapper.getPackageName() )
name
: 정의한 리소스 명defType
: 리소스 카테고리ex ) 아래 두 코드는 같은 리소스
R.id.btn_0
에 접근한다.var idx = 0 // Type 1 findViewById<View>( resources.getIdentifier("btn_$idx", "id", packageName) ) // Type 2 findViewById<View>( R.id.btn_0 )
장점
- 반복문내에서 규칙적으로 명명한 리소스에 접근하여 간결한 코드표현이 가능하다.
- 다양한 컴포넌트에 접근하는 방식을 Array로 관리하여 일괄적으로 접근할 수 있다.
단점
- 컴파일타임에 참조하는 리소스를 검증해주지 않기 때문에 없는 리소스를 참조하는 경우
NullPointerException
을, 형식이 다른 리소스를 참조하는경우에 런타임 예외가 발생할 수 있다.
- 컴파일타임에 참조하는 리소스를 검증해주지 않기 때문에 없는 리소스를 참조하는 경우
'Android' 카테고리의 다른 글
갤럭시 android 테스트용 삼성 테스트기기 원격지원 사이트 (0) | 2022.05.18 |
---|---|
컨트롤 코드에서 디자인 오브젝트 추가하기 (0) | 2022.05.18 |
FCM : Firebase Cloud Message 사용 (0) | 2022.05.18 |
Android Studio에서 SVN 사용을 위한 환경 (0) | 2022.05.17 |
Locale ( 지역화 ) (0) | 2022.05.17 |