flutter - 小部件库捕获的异常构建函数返回 null
问题描述
我对颤振开发相当陌生。我试图让静态标题和网格卡项目在静态标题下方滚动,但我最终得到了错误。我试过研究没有成功。我究竟做错了什么?
小部件库捕获的异常构建函数返回 null。相关的导致错误的小部件是:GridDashboard
和
一个 RenderFlex 在底部溢出了 99515 像素。相关的导致错误的小部件是:列
我的griddashboard类
class GridDashboard extends StatelessWidget {
var services = [
"Home",
"Settings",
"Supervisor",
"Logout",
"Forms",
"Messages",
"bluetooth",
"Check for updates",
"Update"
];
var images = [
"images/calendar.png",
"images/festival.png",
"images/food.png",
"images/image.png",
"images/logout.png",
"images/setting.png",
"images/note.png",
"images/todo.png",
"images/map.png",
];
@override
Widget build(BuildContext context) {
// return Padding(
// padding: const EdgeInsets.all(8.0),
// child:
GridView.builder(
itemCount: services.length,
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 3,
childAspectRatio: MediaQuery.of(context).size.width/(MediaQuery.of(context).size.height/1.4)
),
itemBuilder: (BuildContext context, int index){
return Card(
child: Column(
children: <Widget>[
SizedBox(
height: 20,
),
Image.asset(images[index], height: 50.0, width: 50.0,),
Padding(
padding: const EdgeInsets.all(20.0),
child: Text(services[index], style: TextStyle(fontSize: 16.0, height: 1.2),textAlign: TextAlign.center ,),
)
],
),
);
},
// ),
);
}
}
我的家庭课
class Home extends StatefulWidget {
@override
HomeState createState() => new HomeState();
}
class HomeState extends State<Home> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Color(0xff392850),
body: Column(
children: <Widget>[
SizedBox(
height: 110,
),
Padding(
padding: EdgeInsets.only(left: 16, right: 16),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Text(
"Full Names",
style: GoogleFonts.openSans(
textStyle: TextStyle(
color: Colors.white,
fontSize: 18,
fontWeight: FontWeight.bold)),
),
SizedBox(
height: 4,
),
Text(
"Home",
style: GoogleFonts.openSans(
textStyle: TextStyle(
color: Color(0xffa29aac),
fontSize: 14,
fontWeight: FontWeight.w600)),
),
],
),
IconButton(
alignment: Alignment.topRight,
icon: Image.asset(
"assets/notification.png",
width: 24,
),onPressed: ()=>{
},
),
],
),
),
SizedBox(
height: 40,
),
GridDashboard()
],
),
);
}
}
解决方案
您return
从构建函数中删除了关键字,可能是偶然的。
GridView.builder(
需要是
return GridView.builder(
否则,您的构建函数不会返回任何内容,并且您会得到现在遇到的错误。
推荐阅读
- javascript - 我的路线没有按照我希望的方式工作
- java - 如何在不单击每个方块的情况下使绿色框填满整个屏幕?
- python - Amazon SageMaker 如何预测新数据
- z3py - 将变量限制在 z3 中的域中
- python - 从另一个模块导入的 Python 脚本
- javascript - 如何在 React 中使用 useLongPress.js 从 {...bind} 将参数传递给 onCancel?
- reactjs - React Redux 错误:操作必须是普通对象。使用自定义中间件进行异步操作
- amazon-web-services - 为循环创建的一个资源指定参数 - Terraform
- java - 启动默认 SMS 应用程序将我发送到系统跟踪菜单
- flutter - 无法初始化解码器:颤振中的 OMX.sprd.h264.decoder