我正在构建一个 Flutter 应用程序,其中有一个动态元素网格,可以根据屏幕尺寸进行更改。网格元素也是可扩展的,这意味着它们的大小可以在运行时改变。我实现了我想要的布局;但是,当存在大量元素时,我会遇到性能问题 - 布局变得滞后且无响应。这是我的(想要的)布局的图像:
这是当前的布局实现:
LayoutBuilder(
builder: (context, constraints) {
// Determine the number of columns based on the width
int crossAxisCount = AppDimensions.getCrossAxisCount(constraints.maxWidth);
double itemWidth = (constraints.maxWidth - (crossAxisCount - 1) * 10) / crossAxisCount;
return Wrap(
spacing: 10,
runSpacing: 10,
children: provider.polizzenList.map((polizze) {
return Container(
width: itemWidth,
child: PolizzenCard(
polizze: polizze
),
);
}).toList(),
);
},
),
我能够通过使用包dynamic_height_grid_view来实现想要的布局。这似乎在性能上也非常有效。