ListView 和 RecycleView 在处理大型列表时是否比滚动视图更有效?

Are ListView and RecycleView more efficient in handling large lists than a scroll view?

Much Application 是一个类似于 whatsapp 的聊天程序。所以它不需要一次显示所有消息。除非用户滚动并查看过去的消息,否则在启动时只应向用户显示最后的消息。

我有一个包含大量(大约 1000 个)元素(消息)的 ScrollView。所以它在性能方面效率不高,因为它一次加载和显示所有元素。

在大多数情况下,加载消息的整个历史记录是没有用的。

(我考虑过将这些消息分成几个部分并手动选择只加载它们)

此功能是否内置于 ListView 或 RecycleView 中。

我的意思是,虽然我们将所有元素都加载到 ListView 中,但它是否具有智能处理特定时间(或滚动级别)显示在屏幕上的元素的能力?

是的,使用 ListViewRecyclerView 的主要原因是它们为您提供 View 重复使用。它不会一次性加载所有子视图:它会要求您在需要时将数据绑定到 View

此功能是否内置于 ListView 或 RecycleView 中。 我的意思是,虽然我们将所有元素加载到 ListView,但它是否具有智能处理特定时间(或滚动级别)在屏幕上显示的元素的能力?


是的,这正是 ListView 所做的。使用它滚动会更慢,但它只需要必要的内存量。