删除后用notifyDataSetChanged()没有效果

删除后用notifyDataSetChanged()没有效果

用了适配器的notifyDataSetChanged(),但是没有效果,然后根据网上找的方法,关闭组再打开组

final long packedPosition = mMenuElv.getExpandableListPosition(position);
final int groupPosition = ExpandableListView.getPackedPositionGroup(packedPosition);
mMenuElv.collapseGroup(groupPosition);
mMenuElv.expandGroup(groupPosition);

也还是没有效果,请问应该怎样刷新?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

是不是数据源没有删除呢?在你的Adapter的getChildView()中设置监听事件,听到事件后数据源先删除(本地和数据提供者都删除),再发通知。 resolver.delete(Uri.parse("content://com.imooc.menuprovider"),。。dishList.get(。。。).remove(。。。);
  你的Adapter.this.notifyDataSetChanged();祝:学习愉快

  • jyau 提问者 #1
    刚刚试了更新数据源,还是不行,遍历了一次,数据源确实是有更新的,重新打开页面的话也确实是删除了
    2017-08-29 16:57:19
  • 好帮手慕雪 回复 提问者 jyau #2
    由于代码量较大,不好贴代码,你交作业的时候,在显眼的地方加个说明,老师会在批复文档中回复你的。
    2017-08-29 18:12:32
  • jyau 提问者 回复 好帮手慕雪 #3
    好 的
    2017-08-29 19:33:44
jfhdibrbfjd 2017-11-07 11:25:52

我也是同样的问题  已经删除了   通知更新还不好使真是坑啊

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Android网络操作与数据存储2018版
  • 参与学习           人
  • 提交作业       307    份
  • 解答问题       1613    个

本专题是联网及数据处理的必备技能。课程从网络基础知识到线程间协同工作、异步下载处理。介绍了Android内外部文件存储、轻量级数据库SQLite的使用。利用屏幕适配、状态保持、百度地图解决实际问题。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师