2013-03-19 2 views
1

내 LinearLayout에 ImageBox의 ArrayList가 있습니다. 내 자신의 "OnClick"이벤트 처리기 메서드를 클릭하면 실행됩니다.ArrayList에서 요소의 색인 가져 오기 On을 클릭하십시오.

고유 한 OnClick 이벤트에서 ArrayList의 요소 (ImageButton) 인덱스를 가져 오려고합니다.

그러나 지금까지는 해결책을 제시 할 수 없습니다.

그렇지 않으면 더 복잡한 인덱스 인 인덱스를 가진 사용자 지정 ImageButton을 만들어야합니다.

거기에 좋은 해결책이 있습니까? 미리 감사드립니다.

+0

당신이 ImageButtons의 ID를 얻을 만들 수와 일치하는 멤버 ... – John3136

+0

와의 요소를 반복 한 후 만져되고있는 뷰의 ID를 찾을 때까지 당신이 당신의 컬렉션을 반복 할 수있다 터치 된 뷰 ID와 일치하는 것을보기위한 ArrayList. – Andres

+0

각 버튼에 대해 별도의 수신기 객체를 만들 수 있으므로 어느 버튼을 클릭했는지 걱정할 필요가 없습니다. –

답변

0

이 부분을 살펴보십시오. 그것은 당신을 도울 수 있습니다.

//This is your arraylist of buttons 
ArrayList<ImageButton> buttons ; 

... 

//This is your click listener 
onClick(View view){ 

    ImageButton clickedButton = (ImageButton)view; 
    int index = buttons.indexOfObject(clickedButton); 
    if(index!=-1){ 
    //Your imagebutton clicked 
    } 
}