The getView() method of the class extending the BaseAdapter holds the state of the currently displayed view which is invalidated when scrolling the listview. So, in order to avoid this problem, proceed in the following manner.
• Create a nested class within the class (class which is extending BaseAdapter Class), namely, Viewholder.
• Declare all the views of an individual list item in this Viewholder Class.
• Create an object of this Viewholder class in the getView() method and initialize all the views declared in the Viewholder class using this object.
Example :
Activity activity;
publicclassViewHolder{
TextViewtextview;
CheckBoxcheckbox;
}
public View getView(finalint position, View convertView, ViewGroup parent)
{
View vi=convertView;
LayoutInflaterinflater = activity.getLayoutInflater();
vi = inflater.inflate (R.layout.listitem, null);
ViewHolder item=newViewHolder();
item.textview = (TextView)vi.findViewById(R.id.textview1);
item.checkbox = (CheckBox)vi.findViewById(R.id.checkbox1);
vi.setTag(item);
return vi;
}
Implement this and check the state of the checkbox while scrolling the listview.
Find us on Google+
Related Posts...
Mobile AppsTechnologies
Jun 2nd, 2026
Artificial Intelligence has evolved from a futuristic concept into a powerful business tool. In 2026, organisations across industries are leveraging AI to automate workflows, enhance customer experiences, improve decision-making, and […]
Read more
May 7th, 2026
If you run an online store—or plan to start one—you already know the truth: everyone is on their phone. In 2026, if your business isn’t on a mobile screen, it’s […]
Read more
Apr 30th, 2026
Mobile apps are handling more sensitive data than ever before. From personal details to financial transactions, users trust apps to keep their information safe. That’s why security is no longer […]
Read more