![](/img/trans.png)
[英]Should I use ScrollView or RecyclerView for scrolling in fragment?
[英]Which Recyclerview or ScrollView should I choose?
我用ListView
创建了一个活动。 那是一个 Friend ListView
。
我想让它选择将它添加到另一个View
。
我不知道选择哪种View
最好。 Recyclerview
还是ScrollView
?
像这样
RecyclerView
和ListView
之间的基本区别如下。
ListView
实现起来很简单。 默认适配器可用。 但是ViewHolder
模式和使用 ID 查找视图过去常常会降低性能。
现在在RecyclerView
,使用RecyclerView.ViewHolder解决了上述问题。 对于RecyclerView
适配器,此ViewHolder
是必需的。 虽然与列表视图相比这有点复杂,但解决了ListView
性能问题。
使用RecyclerView
可以使用差异LayoutManagers
。
根据developer.android.com,与 ListView 相比,RecyclerView 性能的主要改进是
RecyclerView 只创建显示动态内容的屏幕部分所需的视图持有者,再加上一些额外的。 当用户滚动列表时,RecyclerView 获取屏幕外视图并将它们重新绑定到滚动到屏幕上的数据
总而言之,RecyclerView 比 ListView 更可取(当 UI 具有根据您的数据重复的相同小部件时)
现在何时使用ScrollView
:
您的 UI 元素可能无法在小设备屏幕中完全显示。 但在更大的屏幕尺寸中它可能! 元素可能不一定只是列表/网格。 它可以具有任何 UI 小部件的组合。
例如:- TextViews
垂直,最后使用RadioButton
和Button
用于用户操作。
这不能包含在ListView
/ RecyclerView
,现在您可以添加具有LinearLayout
/ RelativeLayout
ScrollView
。 可以在其中添加所有其他元素。
现在你可以
我建议用户始终使用 RecyclerView 而不要使用 ListView。 对元素列表使用 RecyclerView,对静态视图使用滚动视图。
在 RecyclerView 或 ListView 中看到您的图像 Scrollview 有拖动问题。
在所有页面中使用垂直 RecyclerView,每行使用水平 RecyclerView。
我建议您使用 RecyclerView,因为您将加载大量图像,如果您最终使用 ScrollView,您将使用大量内存。 此外,当您有动态数据时,建议使用 RecyclerView。 您可以查看 Android 文档中 RecyclerView 的定义如下
RecyclerView 是一种通过提供有限的数据项窗口来有效显示大型数据集的视图。
您可以使用嵌套的 RecyclerView 来创建这样的分层视图。 您还可以查看此示例以了解嵌套的 RecyclerView 用法。
您也可以进一步阅读:
我希望这有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.