android listview:第一项自动突出显示,我无法取消突出显示列表视图的第一项

时间:2014-05-28 12:39:00

标签: android listview

我希望选择多个项目并突出显示,此部分按预期工作,但问题是第一个项目也会突出显示,我不希望它发生。

第一项会自动突出显示,即使我可以突出显示并取消突出显示其余项目,我也无法取消突出显示

这是我试图突出显示的方式

    SngList.setOnItemClickListener(new OnItemClickListener(){

                                    @Override
                                    public void onItemClick(

                                            AdapterView<?> parent, View view,
                                            int position, long id) {

                                        highlight();                                            
                                    }

                                    private void highlight() {

//                                      if      (SngList.isItemChecked(0))
//                                      {   SngList.setItemChecked(position, false);
//                                      ab.notifyDataSetChanged();
//                                      
//                                      }
//                                      
                                        {   SngList.setItemChecked(position, true);
                                        ab.notifyDataSetChanged();
                                        return;
                                        }
                                        // else if (SngList.isItemChecked(position))

                                            //{SngList.setItemChecked(position, false );
                                            //ab.notifyDataSetChanged();
                                            //}

                                    }});

然后在getview方法中我改变颜色

 if(list.isItemChecked(position)){
           v.setBackgroundColor(Color.parseColor("#239700"));
        }
        else{
              v.setBackgroundColor(Color.TRANSPARENT);
        }

1 个答案:

答案 0 :(得分:0)

据我所见,您没有取消选中之前点击的项目。使用int跟踪它,以便在选择其他项目时将其删除。