Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.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
Dart 如何设置背景图像每行GridView_Dart_Flutter - Fatal编程技术网

Dart 如何设置背景图像每行GridView

Dart 如何设置背景图像每行GridView,dart,flutter,Dart,Flutter,我使用Gridview显示带有crossAxisCount的项目,如何设置每行的背景图像 我想这样做 谢谢大家我可以建议两种比较简单的方法来实现这一点,但现在我不得不让你们来实现 这在某种程度上取决于你想展示多少本书,以及你是否确切知道每个书架要展示多少本书 如果您决定希望每行有固定数量的项目(比如5本书),我认为最简单的解决方案是使用ListView,ListView中的每个项目都是一个装饰框(或容器)。该项目将有一个图像背景,即书架,以及一行包含5本书 这对于大量书籍来说应该是相当有效的

我使用Gridview显示带有crossAxisCount的项目,如何设置每行的背景图像 我想这样做


谢谢大家

我可以建议两种比较简单的方法来实现这一点,但现在我不得不让你们来实现

这在某种程度上取决于你想展示多少本书,以及你是否确切知道每个书架要展示多少本书

如果您决定希望每行有固定数量的项目(比如5本书),我认为最简单的解决方案是使用ListView,ListView中的每个项目都是一个装饰框(或容器)。该项目将有一个图像背景,即书架,以及一行包含5本书

这对于大量书籍来说应该是相当有效的,因为它一次只能构造每一行。缺点是您需要决定每行的图书数量,并且在横向或窄纵横比中可能需要单独的代码来绘制(或者至少要选择每行的图书数量,并且仅当您需要横向时)。(请注意,您可以获得屏幕宽度,并据此决定每行有多少本书)

另一种方法是使用一个可滚动的、一个堆栈和一个。您将堆栈放在可滚动列表中,堆栈将有两层-背景和项目。背景必须知道如何根据其高度进行绘制-您可以使用带有装饰图像的盒子装饰并重复。包裹将包含所有图像

有几件事我不是100%确定,比如堆栈是否能够处理大小调整为换行。但我认为这会奏效。其优点是它可以很好地处理屏幕旋转和不同的纵横比,但缺点是它不能很好地处理大量的书籍


还有第三种选择,但它变得更加复杂(尽管客观上这是最好的方法)——使用CustomScrollView和/或Slipers。我甚至不能完全确定我会怎么做,但医生们都知道。

谢谢你的回答。我试试这些解决办法。