15

将我的应用程序中的现有 Listview 转换为 RecyclerView 有什么好处吗?我什么时候应该使用 RecyclerView?

4

2 回答 2

17

这是一个很难回答的问题。首先:将RecyclerView视为 的继任者,AdapterViews它带来了很多有用的改进,尤其是在每个项目的动画领域。实际上这也是Docs所说的:

RecyclerView 是 ListView 的更高级和灵活的版本。这个小部件是可以非常有效地回收和滚动的大型视图集的容器。当您的列表包含动态变化的元素时,请使用 RecyclerView 小部件。

您还可以灵活地为此小部件定义自定义布局管理器和动画。

所以将来我们可能不会再使用ListViews了。此外,RecyclerView 不需要任何东西,比如"notifyDataSetChanged()"从列表中添加或删除项目,这在性能方面是一个巨大的改进。如果您想通过“更高级和更灵活的 ListView 版本”
来了解 Google 的更多含义,我建议您阅读这篇博客文章A First Glance at Android's RecyclerView

但是要明确回答您的问题:

将我的应用程序中的现有 Listview 转换为 RecyclerView 有什么好处吗?
是的。如前所述,RecyclerView 更加灵活,并且免费提供方便的动画。(就自己做这件事而言)

我应该什么时候使用 RecyclerView?
适合 ListView 的任何地方都有 RecyclerView。

还有一个问题:
有必要从ListView切换到RecyclerView吗?
目前绝对没有!您必须考虑 RecyclerView 在这一点上不是最终的。所以在不久的将来可能会有一些变化、错误修复和新功能。(作为一个错误的例子:clipToPaddingatm 不起作用。幸运的是它已经被报告了)

于 2014-09-14T08:26:34.053 回答
1

RecyclerView将是未来,它不仅仅是一个 ListView2,@reVeres 的回答很好地解释了这个案例。

是时候检查文档和做一点测试了,但不是切换的时候,因为 RecyclerView 是 support-v21,你不能在生产版本中使用它。

于 2014-09-14T11:22:03.777 回答