gpt4 book ai didi

android - `ListView.invalidateViews()` 和 'Adapter.notifyDataSetChanged()' 之间有什么区别吗?

转载 作者:IT王子 更新时间:2023-10-28 23:35:25 25 4
gpt4 key购买 nike

ListView.invalidateViews()Adapter.notifyDataSetChanged() 有什么区别吗?

最佳答案

是的,有。

ListView.invalidateViews() 用于告诉 ListView 使其所有子项 View 无效(重绘它们)。请注意, View 数不必与项目数相等。 这是因为 ListView 会回收其项目 View 并在您滚动时以智能方式在屏幕上移动它们。

Adapter.notifyDataSetChanged() 另一方面,是告诉适配器的观察者正在适配的内容发生了变化。通知数据集更改将导致 ListView 再次调用您的适配器方法来调整滚动条、重新生成项目 View 等...

大多数情况下,您希望使用 notifyDataSetChanged 而不是 invalidateViews,但这当然取决于您要完成的工作。

关于android - `ListView.invalidateViews()` 和 'Adapter.notifyDataSetChanged()' 之间有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10676720/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com