Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 4585756
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 21, 20262026-05-21T21:32:28+00:00 2026-05-21T21:32:28+00:00

I would like to implement a click listener for the CheckBoxes of a ListView

  • 0

I would like to implement a click listener for the CheckBoxes of a ListView that uses a custom adapter. Like this:

enter image description here

I know about the existence of the choiceMode, but I would like to implement myself.

I’m trying to apply good practices.
This is how my adapter looks like:

public class TaskListAdapter extends ArrayAdapter<ListTask> {
    private ArrayList<ListTask> mItems;
    private ArrayList<Boolean> mChecked;
    private LayoutInflater mInflater;

    public TaskListAdapter(Context context, int textViewResourceId, ArrayList<ListTask> items) {
        super(context, textViewResourceId, items);
        this.mItems = items;

        // Cache the LayoutInflate to avoid asking for a new one each time
        mInflater = LayoutInflater.from(context);

    // Initialize all checkboxes with false value
        mChecked = new ArrayList<Boolean>();
        for (int i = 0; i < this.getCount(); i++) {
        mChecked.add(i, false);
        }
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        final ViewHolder holder;

        if (convertView == null) {
            convertView = mInflater.inflate(R.layout.list_row, null);

            holder = new ViewHolder();
            holder.checkbox = (CheckBox) convertView.findViewById(R.id.mycheckbox);
            holder.text = (TextView) convertView.findViewById(R.id.mytext);
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }

        MyList mylist = mItems.get(position);

    holder.text.setText(mylist.getMyText());

        // Create a listener for the CheckBox
        holder.checkbox.setOnClickListener(new OnClickListener() {
    @Override
        public void onClick(View v) {
            if (holder.checkbox.isChecked()) {
            mChecked.set(position, true);
            } else {
            mChecked.set(position, false);
            }
        }

        });
        holder.checkbox.setChecked(mChecked.get(position));

        return convertView;
    }

    static class ViewHolder {
        CheckBox checkbox;
        TextView text;
    }
}

When I run my app, I get this error:

java.lang.IndexOutOfBoundsException:
Invalid location 0, size is 0

That errors is thrown by the line

holder.checkbox.setChecked(mChecked.get(position));

that is just before the return statement.

If I comment it and re-run the app, it shows the list, but when I click on a checkbox it throws also a IndexOutOfBoundsException for this line:

mChecked.set(position, true);

that is inside the “if” statement that checks if the checkbox is checked.

What am I doing wrong?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-21T21:32:29+00:00Added an answer on May 21, 2026 at 9:32 pm

    Did you check the value of position? Also did you ensure that your targeting the right views and even populating your list? Chances are you didn’t populate your ListView. From what I remember position was NOT the variable I was interested in when it came to the ListView and CheckBoxes.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I would like to implement a command line interface for a Java application. This
I would like to implement a producer/consumer scenario that obeys interfaces that are roughly:
I would like to implement a post build event that performs the following actions
We would like to implement a web form that automatically saves content at regular
I would like to implement a API of JavaScript that sort of resemble a
I have a modal dialog that I would like to implement a right mouse
I would like to implement the solution like this How do I detect a
I'm trying to create a custom webpart. To implement error handling I would like
I would like to implement a grid view of pixmaps. This is how I
I would like to implement something similar to a c# delegate method in PHP.

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.