2011-12-17 4 views
2

ImageView, TextView와 같은 뷰를 포함하는 동적 TableLayout 및 TableRow를 만들고 있습니다. setId() 메소드를 사용하여 ID를 할당하고 있습니다.Android에서보기에 동적 ID를 할당하는 방법은 무엇입니까?

id 나는 int 변수를 사용하여 뷰 ID로 할당하고 int 배열 또는 list에 저장합니다. 후자는 배열 또는 목록을 사용하여 이벤트 핸들러에서 식별합니다.

난 그냥 알고 싶다 올바른 방법 (또는 problmatic)이 같은 ID를 할당하거나 거기에 더 좋은 방법입니다. 예를 들어 대한

변수 루프에서

final int CHECK_BUTTON_ID = 982301; 
int ids_check[]; 

나는 뷰를 생성하고 ID를 설정합니다.

Button btn_check = new Button(this); 
int id = i + CHECK_BUTTON_ID; 
btn_check.setId(id); 
ids_check[i] = id; 
+1

동적으로 생성 된 테이블 행을 삭제하지 않는 한 제대로 작동하지 않습니다. –

+1

동일한 문제가 발생하지 않습니다 ..하지만 올바른지 ... 확실하지 않은 경우 – Chet

+0

@ android_hungry : 답장을 보내 주셔서 감사합니다. – AB1209

답변

0

Android의 리소스 컴파일러에서 생성 한 ID를 보면 0x7f000000 이상임을 알 수 있습니다. (Eclipse에서 R.id.id_name을 강조 표시하고 F3 키를 눌러 직접 확인하십시오.)

보기로 동적으로 ID를 생성하는 경우 그보다 낮은 범위를 사용하면됩니다.

관련 문제