不同设备上纵横比的 flutter gridview 问题

Bil*_*bbi 3 gridview flutter

我想在 gridview 中有一个固定高度的容器。我正在使用以下代码。它在不同设备上显示不同的高度。有什么方法可以控制高度,使其在所有设备上看起来都相同。在此输入图像描述

                            GridView.count(
                              shrinkWrap: true,
                              crossAxisCount: 2,
                              mainAxisSpacing: 0,
                              childAspectRatio:
                                  MediaQuery.of(context).size.width /
                                      (MediaQuery.of(context).size.height / 1),
                              crossAxisSpacing: 8,
                              children: _productData.map((opt) {
                                return _productCard(context, opt, cart);
                              }).toList(),
                            ),
Run Code Online (Sandbox Code Playgroud)

Bil*_*bbi 7

我能够通过使用此处的类来解决该问题: https: //github.com/flutter/flutter/issues/55290 ,然后像这样使用它

                            GridView.builder(
                              itemCount: _productData.length,
                              gridDelegate:
                                  SliverGridDelegateWithFixedCrossAxisCountAndFixedHeight(
                                crossAxisCount: 2,
                                crossAxisSpacing: 5,
                                mainAxisSpacing: 5,
                                height: 300.0,
                              ),
                              itemBuilder: (BuildContext ctx, int index) {
                                var opt = _productData[index];
                                return _productCard(context, opt, cart);
                              },
                        ),
Run Code Online (Sandbox Code Playgroud)