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

커스텀리스트뷰에 있는 특정행의 이미지를 바꿀수있나요?

0 추천
커스텀 리스트뷰를 구현했는데요.

이미 getView를 통해서 뷰가 다 로드되고 행이 다 로드된 상태에서

특정 행의 뷰를 뽑아내어 이미지만 교체할수가 있나요?

getView가 되는 시점에서 하는게 아니라 모든게 끝난 시점에서요..
갸아악 (21,260 포인트) 님이 2014년 1월 9일 질문

1개의 답변

0 추천
 
채택된 답변
리스트뷰 안에 넣은 데이터 값을 바꾸고 adapter.notifyDataSetChanged() 해주시면 됩니다.

예를 들어 아래 객체에 1~10까지 데이터를 넣어서 리스트뷰로 뿌렸다고 가정하고

ArrayList<Integer> list = new ArrayList<Integer>;

for(int i = 1 ; i <= 10; i++) {

    list.add(i);

}

 

3번째 데이터를 바꾸고 싶다면

list.get(2) = 100;

adapter.notifyDataSetChanged(); 이렇게 하시면 됩니다.
Gradler (109,780 포인트) 님이 2014년 1월 10일 답변
갸아악님이 2014년 1월 10일 채택됨
ArrayList안에 있는 데이터 값이 아닌
특정 번째 View의 이미지뷰의 이미지를 교체 하고 싶습니다...
... 위에것은 예로 들어드린겁니다. 저걸 응용하시면 쉽게 할수 있다는 말씀을 드린겁니다.
그럼 각 뷰들을 별도의 리스트에 담에서 관리해야하나요?
음.. 리스트에 뿌려지는 데이터에 이미지 경로를 가지고 있는 객체가 있지 않나요?..그 객체에 데이터 변경 후에 어댑터에 notifyDataSetChanged를 호출하면 될 것 같은데요...
...