1
내 문제는 내가 가진 명확한 버튼을 선택했을 때 가시성이 사라 졌을 때 listview를 가지고있다. 체크 박스가 보인다 나는 체크 박스의 상태를 스트링하고 있지만 문제는 체크 박스가 onCheckChange()를 호출하고 체크한다. 상태를 설정하기 위해 노력하지만 내보기 recylces 때 다시 저장 상태로 setChecked 다시 내 onCheckChanged 호출하고 내가 위로 다시 스크롤 할 때 내 확인 상태를 복원 나던 이유를 잘 모릅니다 ... 이 내 코드입니다리사이클 getView forgets보기 상태를
public View getView(int position,View convertView,ViewGroup parent)
{
final int currentPosition=position;
View row=convertView;
if(row==null)
{
LayoutInflater inflater=((Activity)context).getLayoutInflater();
row=inflater.inflate(layoutResourceId, parent,false);
holder=new Feedbacks();
holder.lvGuestName=(TextView)row.findViewById(R.id.guestName);
holder.checkBox=(CheckBox)row.findViewById(R.id.clearCheck);
row.setTag(holder);
}
else
{
holder=(Feedbacks)row.getTag();
}
if(showCheckbox)
{
holder.checkBox.setVisibility(View.VISIBLE);
}
else
{
holder.checkBox.setVisibility(View.GONE);
}
holder.lvGuestName.setText(feedbackList.get(position).getGuestName());
holder.checkBox.setChecked(checks.get(position));
holder.checkBox.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
{
if(isChecked)
{
checks.put(currentPosition, true);
}
else
{
checks.put(currentPosition, false);
}
}
});
return row;
}
나는 그것을 해결했다 ... 어쨌든 감사합니다. –