CheckBox y setOnItemClickListener no funcionan en Android

estoy usandoListView conCheckBox. He seleccionado una solaCheckBox pero se selecciona automáticamente en múltiples filas usandoScrollView.

Código de muestra (este código funciona perfectamente)

       holder.checkbox.setOnClickListener( new OnClickListener()
        {
            public void onClick( View v )
            {
                CheckBox cb = ( CheckBox ) v;
                if ( cb.isChecked() )
                {
                    test[position] = true;
                    holder.checkbox.setChecked(test[position]);
                }
                else
                {
                    test[position] = false;
                    holder.checkbox.setChecked(test[position]);
                }
            }
        });
        holder.checkbox.setChecked(test[position]);

Pero cuando lo usesetOnItemClickListener no funciona.

Código de muestra (este código no funciona para mí)

        listview.setOnItemClickListener( new OnItemClickListener() 
        {
            public void onItemClick( AdapterView<?> parent, final View v, final int position, long id ) 
            {
                holder.checkbox = ( CheckBox ) v.findViewById( R.id.lock_File_CheckBox );
                if ( holder.checkbox.isChecked() )
                {
                    test[position] = false;
                    holder.checkbox.setChecked(test[position]);
                }
                else
                {
                    test[position] = true;
                    holder.checkbox.setChecked(test[position]);
                }
            }
        });
        holder.checkbox.setChecked(test[position]);

Donde puedo equivocarme. ¿Cómo evitar esto?CheckBox Selección.

¿Podrías ayudarme?

Respuestas a la pregunta(4)

Su respuesta a la pregunta