android小知识之多个listview在同一界面只有item高亮

我的工程里面一个activity有两个有圆角的listview,就是 自定义的 CornerListView继承ListView,  然后  我想圆角的listview A点击之后一个item会高亮   然后B点中的item时B中的item保持高亮,同时中的高亮item不高亮,也就是说,多个ListView只有一个item高亮。 此时要用到适配器的notifyDataSetChanged()方法,因为adapter.notifyDataSetChanged();是把getview方法重新走了一遍,所以,刷新了就没了以前的高亮操作,达到效果。当然,我在点A的item时去刷新B,这样就只会有A的item高亮了。

 

没有加notifyDataSetChanged()方法

 

 1     @Override
 2     public void onItemClick(AdapterView<?> listview, View view, int position,
 3             long id) {
 4         
 5         if (listView1==listview) {
 6             //this.adapter2.notifyDataSetChanged();
 7             
 8             
 9         }else if(listView2==listview){
10             //this.adapter1.notifyDataSetChanged();
11             
12         }
13 
14     }

 

 

效果如下

 

去掉上面的注释之后效果如下

 

 

 

posted @ 2013-12-11 10:50  寡蛋  阅读(244)  评论(0编辑  收藏  举报