[英]Failed assertion: line 1979 pos 12: 'hasSize'
RenderBox was not laid out: RenderIgnorePointer#370eb relayoutBoundary=up25 NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause. RenderBox 未布置:RenderIgnorePointer#370eb relayoutBoundary=up25 NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE 断言表明框架本身存在错误,或者我们应该在此错误消息中提供更多信息以帮助您确定和修复根本原因。
import 'package:flutter/material.dart';
import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart';
import '../models/grid_model.dart';
class GridViewData extends StatefulWidget {
final VoidCallback onPressed;
const GridViewData({Key? key, required this.onPressed}) : super(key: key);
@override
State<GridViewData> createState() => _GridViewDataState();
}
class _GridViewDataState extends State<GridViewData> {
@override
Widget build(BuildContext context) {
return InkWell(
onTap: widget.onPressed,
child: GridView.custom(
physics: const BouncingScrollPhysics(),
gridDelegate: SliverWovenGridDelegate.count(
crossAxisCount: 2,
mainAxisSpacing: 3,
crossAxisSpacing: 10,
pattern: [
const WovenGridTile(0.7),
const WovenGridTile(
4 / 5,
),
],
),
childrenDelegate: SliverChildBuilderDelegate(
childCount: imageList.length,
(context, index) {
return Container(
decoration: BoxDecoration(
image: DecorationImage(
image: AssetImage(imageList[index].image),
),
),
);
}),
),
);
}
}
答案是我从我被称为 GridView 类的正文中删除了 SingleChildScrollView,因为 GridView 本身是一个可滚动的小部件,这就是它给出错误的原因
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.