안드로이드 개발 질문/답변
(글 수 45,052)
스크롤 할 때 체크박스가 풀리네요. 어디가 잘못된 것 일까요?
밑에 소스 첨부해 봅니다. getview 부분입니다.
밑에 소스 첨부해 봅니다. getview 부분입니다.
private boolean isCheck[] ; //체크할 position 저장 배열
/////////////////getView/////////////////
public View getView(final int position, View convertView, ViewGroup parent)
{
View v = convertView;
if(v == null) {
int res=0;
switch (mList.get(position).Type) {
case Item.middle:
res = R.layout.filter_list_item;
break;
}
v = sLayoutInflater.inflate(res,parent,false);
}
final Item p = mList.get(position);
if (p != null) {
TextView title = (TextView) v.findViewById(R.id.tv_title);
CheckBox chk = (CheckBox) v.findViewById(R.id.cb_box);
try {
title.setText(mList.get(position).getTitle());
if (chk != null) {
chk.setChecked(false);
CheckBox cbox = (CheckBox)(v.findViewById(R.id.cb_box));
cbox.setChecked(isCheck[position]);
cbox.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
if (isCheck[position]) {
isCheck[position] = false;
} else {
isCheck[position] = true;
}
}
});
chk.setChecked(isCheck[position]);
}
} catch (Exception e) {
}
}//p
return v;
}//getView



