Субобъект ListView, активируемый нажатием кнопки мыши

Задав вопрос и потратив 15 дней на его решение, я снова ищу помощь и решение. В MainActivity я создал задачу загрузки Json, которая загружает данные из http, и с помощью CustomListAdapter.class я заполняю список. Все работает. Теперь, в списке просмотра у меня есть 2 textview 'с которой я хочу быть кликабельным, один из них "Принять», это textview просто в XML это 'не заполнены адаптером или Json. "Принять» должен работать такИзмените текст на Принятый и измените цвет " и работает как все остальное. НО, когда я нажму на первый "Принять»(Позиция 0) в списке просмотра изменяет другие элементы списка (Позиция 4,9). Это'Как будто я нажал на просмотр текста в позиции 4,9. На первом изображении перед нажатиемПринять» и второе - после нажатия.

 ///

 public class MainActivity extends Activity {

protected static final String TAG = null;
public ArrayList feedList;
public ListView feedListView;
private ProgressBar progressbar;
 private CustomListAdapter adap;
 private LayoutInflater mInflater;


@Override 
public void onCreate(Bundle savedInstanceState)
{
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main); 
      feedListView= (ListView) findViewById(R.id.custom_list);

      mInflater = (LayoutInflater) getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
      String url = "...";
      new DownloadFilesTask().execute(url);

      getActionBar().setIcon(R.drawable.angel);
      progressbar = (ProgressBar)findViewById(R.id.progressBar);


       public void updateList() {
    adap = new CustomListAdapter(this, feedList);

           feedListView.setAdapter(adap);

            }


      public class DownloadFilesTask extends AsyncTask {


      ///....  

CustomListAdapter.class

    public class CustomListAdapter extends BaseAdapter  
 {

private ArrayList listData;
private LayoutInflater layoutInflater;
private Context mContext;
private ArrayList data;
protected ListView feedListView;
ArrayList list;

public CustomListAdapter(Context context, ArrayList listData)
{
    this.listData = listData;
    layoutInflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    mContext = context;
    data = new ArrayList();
    for (int i = 0; i < 10; i++) {
        data.add("Sample Text " + String.valueOf(i));
    }
}


@Override
public int getCount()
{
    return listData.size();
}

@Override
public Object getItem(int position)
{
    return listData.get(position);
}

@Override
public long getItemId(int position)
{
    return position;
}


public View getView( int position, View convertView, ViewGroup parent)
{
 final ViewHolder holder;
 View row=convertView;
    if ((row == null) || (row.getTag()==null)) {

     convertView = layoutInflater.inflate(R.layout.list_row_layout, null);
     holder = new ViewHolder();
     holder.headlineView = (TextView)convertView.findViewById(R.id.name);
     holder.reportedDateView = (TextView) convertView.findViewById(R.id.confid);
     holder.accept= (TextView) convertView.findViewById(R.id.acceptTV);

     convertView.setTag(holder);



    }
    else
    {
        holder = (ViewHolder) convertView.getTag();

    }

   final FeedItem newsItem = (FeedItem) listData.get(position);
    holder.accept.setFocusable(true);

    holder.accept.setClickable(true);
    holder.headlineView.setText(Html.fromHtml(newsItem.getTitle()));
    holder.reportedDateView.setText(Html.fromHtml(newsItem.getContent()));

    holder.accept.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {


                    holder.accept.setText(Html.fromHtml(newsItem.getContent()));
        }
    });



    return convertView;
}




static class ViewHolder
{

    TextView accept;
    TextView headlineView;
    TextView reportedDateView;
    ImageView imageView;
    FeedItem newsItem;

}

Ответы на вопрос(3)

Ваш ответ на вопрос