listview数据加载后不刷新,需要点击或者滑动屏幕才能刷新解决

菜鸟进场,方圆十里,寸草不生

今天遇到一个问题,很是奇葩,不知道是不是与我引入的插件有什么冲突,反正问题就是出现了。

问题描述:初始化适配之后,将数据改变了,调用notifyDataSetChanged()方法,页面不刷新,但是滑动屏幕后,又刷新了,但是不主动刷新。最开始以为是我引入的智能刷新控件导致的这个问题(虽然以前没遇到过),于是我把控件暂时注释了,再试,由于数据少,现在屏幕不能滑动了,但是还是不刷新,点击屏幕两次又可以刷出来。

解决办法:那从现象可以看出来,能够确保的就是数据肯定刷新了,只是页面没有进行刷新,我尝试了多种方法,比如数据改变了之后重新设置适配器,延迟调用notifyDataSetChanged()方法等,都没有用。然后就想着能不能重新绘制这个listview呢,尝试调用oncreat()方法,这样虽然能够实现想要的效果,但是肯定是不行的,于是在网上找啊找,终于发现一个文章:https://blog.youkuaiyun.com/q610098308/article/details/52227250

结论:在数据加载完成之后调用 listview.invalidate()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值