在Activity的onResume()方法中更新ListView

描述:
今天在做一个功能的时候,从Aactivity跳到Bactivity。
由于Bactivity的操作,影响了Aactivity的数据,所以再回到A的时候,需要A能够进行刷新操作。
但是默认跳回去的时候,A界面还是上次那个。

解决方案:
重写Aactivity的onResume()方法,在onResume()方面里进行刷新操作。因为按照activity的生命周期模型,当activity恢复的时候,onResume()方法会被调用,所以这是一个刷新的好机会。



我发现app刚打开的时候就开始调用onResume(),所以里面如果直接调用adapter.notifyDataSetChanged()的话,app一运行就挂掉了,报java.lang.NullPointerException,原因是此时ListAdapter还未实例化,所以报空指针,解决办法就是先用if判断adapter是否为null


不过为啥app刚开始运行就调用onResume()我还不知道,学完Activity生命周期再说吧



另外关于ListView的刷新方法notifyDataSetChanged(),直接用Adapter调用是没用的,使用前要先更新Adapter使用的List数据,然后再用Adapter调用notifyDataSetChanged()方法


</

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值