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

时间:2021-09-24 06:34:45

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

没有加notifyDataSetChanged()方法

     @Override
public void onItemClick(AdapterView<?> listview, View view, int position,
long id) { if (listView1==listview) {
//this.adapter2.notifyDataSetChanged(); }else if(listView2==listview){
//this.adapter1.notifyDataSetChanged(); } }

效果如下

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

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

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

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