ListView 和 ListView.builder 有什么区别,我们可以使用 Listview.builder 来创建、验证和提交表单吗?

mah*_*ari 13 flutter

Listview.builder 和 Listview 有什么区别?我们可以使用 ListView.builder 提交表单吗?

我现在使用 Listview.builder 创建表单。

Rub*_*elo 16

来自官方文档:

https://api.flutter.dev/flutter/widgets/ListView/ListView.html

ListView:从显式列表创建可滚动的线性小部件数组。此构造函数适用于具有少量子级的列表视图,因为构造 List 需要为可能显示在列表视图中的每个子级而不是仅实际可见的子级进行工作。


https://api.flutter.dev/flutter/widgets/ListView/ListView.builder.html

ListView.builder 创建按需创建的可滚动的线性小部件数组。此构造函数适用于具有大量(或无限)子项的列表视图,因为仅针对那些实际可见的子项调用构建器。

基本上,builder构造函数创建一个惰性列表。当用户向下滚动列表时,Flutter 会“按需”构建小部件。

默认 ListView 构造函数一次构建整个列表。

在您的情况下,默认构造工作正常,因为您现在已经应该在 Column() 上放置多少个小部件。


jit*_*555 14

ListView和ListView.builder的主要区别

构造函数ListView要求我们立即创建所有项目。当列表项较少并且所有内容都会在屏幕上看到时,这很好,但如果不是这样,那么对于长列表项来说,这不是一个好的做法。

然而

构造ListView.Builder函数将在项目按需滚动到屏幕上时创建项目。这是列表小部件开发的最佳实践,其中只有当项目在屏幕上看到时才会呈现。


小智 5

ListView.builder() 根据需要构建小部件(当它们可见时)。此过程也称为“延迟渲染小部件”。