안드로이드 개발 질문/답변
(글 수 45,052)
.xml 파일을 Build 할 떄
(R.java는 XML이 aapt tool에 의해 Build되어 생성되죠)
< ...
android : layout_width = "fill_parent"
... >
라고 쓰고 (보통 버튼등을) 지정합니다.
android는 android.jar / android / R / attr / layout_width 라고 되어 있어서
aapt는 이것을 인식합니다. R을 열어보면 정의되어 있는걸 볼 수 있죠.
하지만 fill_parent는? aapt는 이 String을 어떻게 인식하고 파싱 할까요?
분명 LayoutParam에 FILL_PARENT가 정의되어 있지만(ViewGroup)
그걸 그대로 쓴다고 해서 인식되는건 아닐겁니다. 왜냐하면 실제로 쓸 땐 소문자 거든요.
그도 그렇지만 실제로 인식되는 것은 정수 (fill_parent=-1)를 인식 할 텐데
aapt는 이 정수 타입을 어떻게 아는걸까요?
어딘가에 선언 되어 있는걸까요?
제가 부족하여 설명을 제대로 못했지만 안드로이드를 하다가 궁금점이 들어 이렇게
게시판에 올리게 되었습니다
고수님들의 많은 조언 부탁드립니다.
JVM 쪽에서 Class Loader 를 낱낱이 파헤쳐 보면 알 수 있을거 같은데요? 저도 확실하게 잘 모르겠음..ㅎ