ListView 隐藏 某个 Item

最近在做个项目,有个需求涉及到一个功能,大概就是过滤掉listview的某个item,百度了一下,发现没啥好的解决方法,于是还是google一下,果然搞出了答案,记录一下,方便他人~


 

[java]  view plain  copy
 print ?
  1. List<PatientCase> mList = userListJson.patientCaseItems;  
  2.                 if (isRefresh) {  
  3.                     if (adaCase == null) {  
  4.                         adaCase = new AdaPatientReceiveCase(getActivity(), mList);  
  5.                         mListViewContent.setAdapter(adaCase); //adaCase就是Adapter; 
  6.                     } else {  
  7.                         adaCase.clear();  
  8.                         adaCase.AddAll(mList);  
  9.                     }  
  10.                 } else {  
  11.                     adaCase.AddAll(mList);  
  12.                 }  
  13.   
  14.                 if (mList.size() < 10) {  
  15.                     mPullFreshDataView.setLoadMoreEnable(false);  
  16.                 }  
  17.   
  18.                 // 删除符合要求  
  19.                 if (F.ROLE == Constant.ROLE_EXPERT) {  
  20.                     for (int i = 0; i < mList.size(); i++) {  
  21.                         if (mList.get(i).status == 4) {  
  22.                             Log.d("remove ""remove index is " + i);  
  23.                             adaCase.remove(mList.get(i));  
  24.                             adaCase.notifyDataSetChanged();  
  25.                         }  
  26.                     }  
  27.                 }  
List<PatientCase> mList = userListJson.patientCaseItems;  
                if (isRefresh) {  
                    if (adaCase == null) {  
                        adaCase = new AdaPatientReceiveCase(getActivity(), mList);  
                        mListViewContent.setAdapter(adaCase);  <span style="color:#ff0000;"><span style="font-family: Consolas, 'Courier New', Courier, mono, serif; line-height: 18px;">//</span><span style="font-family: Consolas, 'Courier New', Courier, mono, serif; line-height: 18px;">adaCase就是Adapter;</span><span style="font-family: Consolas, 'Courier New', Courier, mono, serif; line-height: 18px;"> </span></span>
                    } else {  
                        adaCase.clear();  
                        adaCase.AddAll(mList);  
                    }  
                } else {  
                    adaCase.AddAll(mList);  
                }  
  
                if (mList.size() < 10) {  
                    mPullFreshDataView.setLoadMoreEnable(false);  
                }  
  
                // 删除符合要求  
                if (F.ROLE == Constant.ROLE_EXPERT) {  
                    for (int i = 0; i < mList.size(); i++) {  
                        if (mList.get(i).status == 4) {  
                            Log.d("remove ", "remove index is " + i);  
                          <span style="color:#ff0000;">  adaCase.remove(mList.get(i));  
                            adaCase.notifyDataSetChanged();  </span>
                        }  
                    }  
                } 


代码其实很简单,只需要adapter中符合要求的item给remove掉,然后在刷新一下数据就可以了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值