listview 局部刷新

hshm20517 2011-02-12 11:20:33
一个listView有很多列,其中有一列的数据发生的变化,我现在只想要这一列的内容更新,只要局部刷新,不用全部刷新
...全文
1336 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
做个明白人 2012-08-29
  • 打赏
  • 举报
回复
求解啊
freshui 2011-02-15
  • 打赏
  • 举报
回复
notifyDataSetChanged(); 可以的。

我们做的视频预览图解析就是这样编解析变显示的
raoyongchao 2011-02-15
  • 打赏
  • 举报
回复
楼主可以不用listview来做,listview能实现的功能是有限的,我们做的时间一般是用layout布局来实现的,也就是自定义,这样每一行就可以做成一个layout,如果要改变某行中的数据也就是局部刷新,只用获得该行的layout,然后改变里面的数据就行了
hshm20517 2011-02-15
  • 打赏
  • 举报
回复
楼上各位兄弟,你们的回答给我的感觉:
无论怎么样,不管是notifyDataSetChanged,还是重写getView,貌似用代码是不能实现局部刷新的,
至于notifyDataSetChanged的代码是不是局部刷新,那是另一回事。
小裴同学 2011-02-14
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 beyondma 的回复:]

没法实现的,LISTVEIW整个是一个HANDLE
[/Quote]
+++++++
阿鹏兄 2011-02-14
  • 打赏
  • 举报
回复
整个listview只能一块刷新吧
BadPattern 2011-02-14
  • 打赏
  • 举报
回复
你担心的是listview界面只改变了一点点,而去更新整个界面的话会引起巨大的浪费,
相信google也考虑到了这一点,它提供了方法notifyDataSetChanged(),具体后边源码的实现是怎么样的,还没看。
BadPattern 2011-02-14
  • 打赏
  • 举报
回复
使用adapter的方法notifyDataSetChanged();
内部实现应该是局部刷新
大掌教 2011-02-14
  • 打赏
  • 举报
回复
重写啥都不管用。你可以重新加载某个数据字段的数据,但表现在UI上还是要整体刷新的。
friskit 2011-02-14
  • 打赏
  • 举报
回复
重写adapter的getview()。
hshm20517 2011-02-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 drsmart 的回复:]
adapter绑定的数组变那里,就刷新哪里,你看看arrayadapter同时,你对adapter理解不够
[/Quote]
兄弟,能给我例子不?
sky123123 2011-02-13
  • 打赏
  • 举报
回复
刷新全部,只是改变那些需要改变的项不行吗,


内容不变的话,随便刷新都没有问题吧
beyondma 2011-02-13
  • 打赏
  • 举报
回复
没法实现的,LISTVEIW整个是一个HANDLE
DrSmart 2011-02-13
  • 打赏
  • 举报
回复
adapter绑定的数组变那里,就刷新哪里,你看看arrayadapter同时,你对adapter理解不够
  • 打赏
  • 举报
回复
使用行ID,只更新这一行试试。

80,360

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧