我们何时以及为何在 Android 中使用列表视图而不是滚动视图?
When and why we use list view instead of scrollview in Android?
我知道我们总是使用列表视图而不是滚动视图来显示项目列表。但我知道我们也可以用 scrollview 来做。我知道当您想显示项目列表时,列表视图的性能优于滚动视图。我的问题是这也有任何原因吗?为什么没有人使用 scrollview 来显示项目列表?请给我你的意见。谢谢。
ScrollView用于放置不同或相同的子视图或布局,并且都可以滚动。
ListView 用于将相同的子视图或布局放置为多个项目。所有这些项目也是可滚动的。
另一方面,滚动视图则完全不同。您将其他视图添加到滚动视图,这允许您拥有比屏幕上适合的元素更多的元素。比如说,你想要 50 个按钮或一大块文本。通过使用列表视图,您拥有一个与屏幕大小相同的容器,但允许用户上下滚动以查看其他视图。
ListView 使用出列的概念,即在视图不可见时从视图层次结构中删除它们。例如,如果您有 20 个项目并且一次只能看到 10 个。
The listview will remove the top 1st element when 11th element comes
into view using scrolling. This reduces memory load and gives smoother
performance. Battery consumption is major factor of phone these days
and no one wants a app that consumes all the phone battery.
另一方面,Scrollview 将所有添加到其中的视图始终保留在视图层次结构中,因此当添加的视图数量巨大时会增加内存使用量和性能问题。
我经常使用 Scrollview 来显示项目的限制,这个数字很少在运行时更改,例如在配置页面中。否则,ListView 用于显示很多项目。这些项目可能是同一类型,例如学生列表、消息等。
我知道我们总是使用列表视图而不是滚动视图来显示项目列表。但我知道我们也可以用 scrollview 来做。我知道当您想显示项目列表时,列表视图的性能优于滚动视图。我的问题是这也有任何原因吗?为什么没有人使用 scrollview 来显示项目列表?请给我你的意见。谢谢。
ScrollView用于放置不同或相同的子视图或布局,并且都可以滚动。
ListView 用于将相同的子视图或布局放置为多个项目。所有这些项目也是可滚动的。
另一方面,滚动视图则完全不同。您将其他视图添加到滚动视图,这允许您拥有比屏幕上适合的元素更多的元素。比如说,你想要 50 个按钮或一大块文本。通过使用列表视图,您拥有一个与屏幕大小相同的容器,但允许用户上下滚动以查看其他视图。
ListView 使用出列的概念,即在视图不可见时从视图层次结构中删除它们。例如,如果您有 20 个项目并且一次只能看到 10 个。
The listview will remove the top 1st element when 11th element comes into view using scrolling. This reduces memory load and gives smoother performance. Battery consumption is major factor of phone these days and no one wants a app that consumes all the phone battery.
另一方面,Scrollview 将所有添加到其中的视图始终保留在视图层次结构中,因此当添加的视图数量巨大时会增加内存使用量和性能问题。
我经常使用 Scrollview 来显示项目的限制,这个数字很少在运行时更改,例如在配置页面中。否则,ListView 用于显示很多项目。这些项目可能是同一类型,例如学生列表、消息等。