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

리스트뷰 각 포지션에 버튼에 대한 이미지 변경 질문입니다.

0 추천

리스트뷰에 데이터가 3개 있습니다.

데이터1 

데이터2

데이터3 

각각 버튼형식으로 되어있으며

해당 버튼을 눌렀을 시, 해당버튼에 이미지만 다른걸로 바꾸려고 합니다.

이것저것 해봤는데 전체이미지가 바뀌고 아예안바뀌고 그러는데 힌트좀 부탁드립니다.

public void onClick(View v) {
test = "1";
dataSet.D_P = test;  << 해당버튼클릭 시
 
아답터에 들어왔을 시,
 
if (dataSet.D_P.equals("1")) {
play.setBackgroundResource(R.anim.play_btn);
}
넣어줬더니 전체이미지가 다 바뀌더군요. 버튼클릭 했을 시 클릭된 버튼 이미지만 변경이 가능한방법이 어떤건지 조언좀 부탁드립니다

개발을 몇달쉬었더니 머리가안돌아가는건지 쉬운건데 제가 넘 어렵게 생각하는건지 ㅠㅠ

콜벳 (7,150 포인트) 님이 2015년 4월 20일 질문

1개의 답변

0 추천
 
채택된 답변
어댑터의 getView()의 버튼에 클릭이벤트 달아서, onClick되면 파라미터로 넘어온 v의 백그라운드를 바꿔보세요
쎄미 (162,410 포인트) 님이 2015년 4월 20일 답변
콜벳님이 2015년 4월 21일 채택됨
답변감사합니다. 위에 온클릭은 getview에 버튼클릭이벤트를 달았구요,
쎄미님 말씀대로 v의 백그라운드에 하니 해당 이미지가 변하긴하나 다음에 들어왔을 땐 다시 원래 이미지로 되어있더라구요. 버튼이 누르면 이벤트가 실행되고 이벤트 완료 후 이미지를 변화시키려고하는데 그게잘안되네요.
나중에 쓰려면 변경된 정보를 어딘가에는 저장해야 합니다.
...