arrayAdapter.notifyDataSetChanged();更新数据失败

来源:互联网 发布:北京中标软件怎么样 编辑:程序博客网 时间:2024/05/29 16:49

今天在写一个小控件的时候发现, 使用arrayAdapter.notifyDataSetChanged()更新数据无效

list = db.loadInput();arrayAdapter.notifyDataSetChanged();

这里错误的原因是,将db.loadInput()返回的List对象直接传给了adapter中的list,相当于之前adapter中的list引用了db.loadInput()返回的数据,但是adapter引用的是未更改时list的引用,所以更新数据无效。

通俗点说就是arrayAdapter.notifyDataSetChanged();这个方法,只能向Adapter里面的List添加数据,而不能每次都给一个新的List对象,否则也无法刷新数据,这里我是把db返回的对象引用赋给了list,所以adapter中list并没改变,所以无法更新数据。

0 0
原创粉丝点击