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

그리드뷰에서 셀마다 다운로드 퍼센트를 표시하고 싶습니다.

0 추천
안녕하세요.

그리드뷰에서 셀마다 다운로드 진행률을 텍스트뷰로 표시하고 싶어서

나름대로 작업을 했습니다.

복수의 다운로드를 할 수 있게 만들었으며,

각 셀을 체크할때 해쉬맵에 키값으로 포지션과 해당 다운로드 url을 셋하는 방식으로 하여

다운로드 버튼을 눌렀을때 해쉬맵에 있는 정보를 토대로 순차적으로 다운로드 하게 만들었습니다.

AsyncTask를 다운로드 클래스로 활용하였구요.

진행률 텍스트의 ui 업데이트를 위해 AsyncTask로 textView의 참조값을 파라미터로 넘긴후 ui 갱신처리를 하였습니다.

그런데 문제가 해결이 되지 않습니다.

예를들어 4개의 셀을 선택후 다운로드를 실시하면..

특정 셀 한개에서만 네개의 다운로드 진행상황이 순차적으로 표시가 됩니다.

1번이 끝났으면 다음셀로 넘어가고 거기에 있는 텍스트뷰의 진행상황이 업데이트 되어야 하는데..

현재 뷰 홀더패턴을 적용해놨는데

홀더패턴을 사용하면 하나의 객체를 계속 재사용하기때문에

텍스트뷰는 홀더 패턴을 적용하지 않고 getView시마다 새로운 텍스트뷰를 생성하게 해놨습니다.

그리고 그 텍스트뷰 객체를 setTag로도 저장해보았고..

특정 클래스에 저장해놨다가 나중에 빼서 써보기도 했는데..

계속 한개의 셀에서만 다운로드진행률이 표시됩니다...

아... 어케해야될지 이제 방향감을 상실했네요

조언부탁드립니다.

 

요약 : 그리드뷰에서 선택된 각각의 셀에 다운로드 진행률을 텍스트뷰로 표시하고 싶은데 각각의 텍스트뷰에 진행률이 표시되어야 하는데 하나의 텍스트뷰에서만 진행률이 계속 표시되고 다른 텍스트뷰로 접근이 안됨..

조언부탁드립니다.
갸아악 (21,260 포인트) 님이 2014년 8월 11일 질문

1개의 답변

+2 추천
 
채택된 답변
setTag로 다운로드 작업을 구별할수 있는 키값을 설정하시고

작업이 업데이트 될때 findViewWithTag로 뷰를 찾아서 있으면 업데이트하고 없으면 건너뛰는 식으로 하시면 될겁니다.
alkyne (22,960 포인트) 님이 2014년 8월 11일 답변
갸아악님이 2014년 8월 11일 채택됨
감사드립니다.
많은 도움 되었습니다~
아무리 해도 안되네요ㅠㅠ
아미치겠어요
...