flutter - 不同设备上纵横比的颤动gridview问题
问题描述
我想在 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(),
),
解决方案
我能够通过使用这里的类来解决这个问题: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);
},
),
推荐阅读
- flutter - Flutter/Dart - 无法使用静态访问访问实例成员“displayNotification”
- flutter - 我们如何像 fontAwesome Icons 一样在 Flutter 中添加引导图标(即 Half-Circle Icon)
- javascript - eslint 不忽略 node_modules 并在尝试 lint 时出错
- linux - 如何使用 qemu-system-x86_64 将多个内存对象添加到一个 numa 节点
- ios - react-native-maps:谷歌地图在 iOS 上显示为空白
- python - Pytube 给出“HTTP 错误 404:未找到”错误。任何人都知道如何解决这个问题?
- cookies - Nuxt Vuex Helper 未将客户端 Cookie 发送到 API
- c# - WCF - 如何以编程方式设置绑定配置?
- reactjs - 如何在 React 中重用或扩展 .env 变量
- qemu - 使用 qemu-system-x86_64 时是否可以使用比主机 cpus 更多的 cpu?