마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

xml소스들 묶어버리기

0 추천
xml에이미지버튼이 25개 있는데

이것들을

5개씩묶어서 java소스에 불러올수있을까요?

if문 쓰려고 한번에 다섯개를 묶어서 불러오고싶습니다.

묶으려면 어떤식으로 묶고 아이디를정할수있나요? ㅠ

참고할만한소스좀 불러주세요 ㅠ
안드로이드어렵 (180 포인트) 님이 2013년 2월 22일 질문

2개의 답변

0 추천
동적이 아니라 고정적으로 이미 layout xml 에 선언된 거라면 그냥 사용하면 되지 않나요?
동기화인생 (3,640 포인트) 님이 2013년 2월 22일 답변
0 추천
다소 위험한 방법이지만 한 900만뷰 이상 된 화면에서도 별 문제가 없었기에 적습니다.

linear하게 컴포넌트들의 ID를 지정해두시면 R.java 파일에서도 linear 하게 생성됩니다.

만약 컴포넌트들의 이름이 img001, img002, img003 이고

img001의 id값이 0x00000001 이라면

img002의 id값은 0x00000002가 되게 됩니다.

이를 이용하여 컴포넌트를 java 소스에서 초기화 할때

 

ImageView imgs[]  = new ImageView[총 개수];

for(int i = 0; i < 총 개수 ; i++){

imgs[i] = (ImageView)FindByViewId(R.id.img001+i)

}

식으로 초기화 시키시면 됩니다.
Noizbuster (11,970 포인트) 님이 2013년 2월 24일 답변
전혀 위험하지 않습니다.
저도 Noizbuster님처럼 사용하고 있습니다.
그래도 불안하면 컴파일 후에 gen 폴더 내의 R.java 를 확인하면 됩니다.
...