Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter GridView保留所有元素,而不是一次在屏幕上构建它们_Flutter_Dart - Fatal编程技术网

Flutter GridView保留所有元素,而不是一次在屏幕上构建它们

Flutter GridView保留所有元素,而不是一次在屏幕上构建它们,flutter,dart,Flutter,Dart,我有一个网格视图,它显示了许多不同服务的修复状态,并为它们着色和/或在服务停止时自动打开网页。问题是屏幕外的元素没有被检查,这是更有效的,但在这种情况下不是所希望的 我猜它的行为类似于android中的RecyclerView 我想构建检查服务运行状况的小部件,即使它们在屏幕上不可见 当前,直到我将服务滚动到屏幕中时,才开始检查这些服务。假设您当前使用的是GridView.builder构造函数,我建议使用“normal”GridView构造函数(带有children属性)。由于GridView

我有一个网格视图,它显示了许多不同服务的修复状态,并为它们着色和/或在服务停止时自动打开网页。问题是屏幕外的元素没有被检查,这是更有效的,但在这种情况下不是所希望的

我猜它的行为类似于android中的RecyclerView

我想构建检查服务运行状况的小部件,即使它们在屏幕上不可见


当前,直到我将服务滚动到屏幕中时,才开始检查这些服务。

假设您当前使用的是
GridView.builder
构造函数,我建议使用“normal”
GridView
构造函数(带有
children
属性)。由于
GridView.builder
仅构建出于效率原因当前可见的元素,因此未在屏幕上呈现的元素将不会运行后端逻辑

有关更多信息,请参阅:

[GridView.builder]构造函数适用于具有大量(或无限)子对象的网格视图,因为只为那些实际可见的子对象调用生成器

您将找到其他选择:

最常用的网格布局是GridView.count,它创建的布局在横轴上具有固定数量的平铺;GridView.extent,它创建的布局具有最大横轴范围的平铺