Android - Any change made to any of the ListView item is affected to the first item
===

I have ListView which displays a list of items. When I click on an item, I mark the item as striked in my database table. Then, I update the list using a SimpleCursorAdapter, setViewBinder, setViewValue. 

I check if the striked column is set for a corresponding item, and then I update the TextView to strike the item.

The code is below

    Cursor c = db.fetchAllNotes(bedid);
        startManagingCursor(c);

        String[] from = new String[] { DatabaseHandler.KEY_TASK_ITEM };
        int[] to = new int[] { R.id.text1 };
        
        SimpleCursorAdapter notes =
            new SimpleCursorAdapter(this, R.layout.task_row, c, from, to);
        
        notes.setViewBinder(new SimpleCursorAdapter.ViewBinder() {
			
			public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
				// TODO Auto-generated method stub		
				System.out.println("column index " + columnIndex);
				textViewItem = (TextView) view.findViewById (R.id.text1);
				System.out.println("Item is "+ textViewItem.getText().toString());
				System.out.println("Item from cursor is " + cursor.getString(2));
				System.out.println("Striked value is " + Integer.parseInt(cursor.getString(3)));
				if(Integer.parseInt(cursor.getString(3)) == 1)
					textViewItem.setPaintFlags(textViewItem.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
				return false;
			}
		});
        setListAdapter(notes);

Now, if any item in the list is striked, the first item is also striked. I tried printing out the values passed to setViewValue and this is the output

    Item is 
    Item from cursor is first
    Striked value is 0

    Item is first
    Item from cursor is second
    Striked value is 0

    Item is second
    Item from cursor is third
    Striked value is 1

    Item is third
    Item from cursor is fourth
    Striked value is 0

Here, I have striked only the third item, but in the list, both first and third are striked out.

What am I doing wrong?