I know that this question has been asked over and over again but still I\'ve not been a able to find a suggestion that really helps me. The checkbox is unchecked whenever th
getView() is called whenever a previously invisible list item needs to be drawn. Since you recreate itemChecked[] each time this method is called you will have the new checkbox unchecked and a different Array for each resulting View. (final in Java does not make that field unique like in C)
Simplest way to solve that is to make itemChecked a classmember and set / restore checkbox state based on that one.
public class MyListAdapter extends ArrayAdapter