为什么GridView无法渲染?

时间:2020-08-26 15:33:48

标签: flutter

我想知道为什么我的GridView没有渲染窗口小部件。我正在尝试在两列和2-3行中呈现按钮。 代码如下:

 Widget build(BuildContext context) {
    return Scaffold(
        body: SafeArea(
            child: Column(
      children: <Widget>[
        GridView.count(
          shrinkWrap: true,
          primary: true,
          crossAxisCount: 2,
          children: <Widget>[
            Center(
              child: FlatButton(
                onPressed: () => {},
                padding: EdgeInsets.all(10.0),
                child: Column(children: <Widget>[
                  Image.asset(
                    'assets/img/wifi.png',
                    height: 50.0,
                    width: 50.0,
                  ),
                  Text('Wifi')
                ]),
              ),
            ),
            Center(
              child: FlatButton(
                onPressed: () => {},
                padding: EdgeInsets.all(10.0),
                child: Column(children: <Widget>[
                  Image.asset(
                    'assets/img/wifi.png',
                    height: 50.0,
                    width: 50.0,
                  ),
                  Text('Key/Access')
                ]),
              ),
            ),
            Center(
              child: FlatButton(
                onPressed: () => {},
                padding: EdgeInsets.all(10.0),
                child: Column(children: <Widget>[
                  Image.asset(
                    'assets/img/wifi.png',
                    height: 50.0,
                    width: 50.0,
                  ),
                  Text('Key/Access')
                ]),
              ),
            ),
            Center(
              child: FlatButton(
                onPressed: () => {},
                padding: EdgeInsets.all(10.0),
                child: Column(children: <Widget>[
                  Image.asset(
                    'assets/img/wifi.png',
                    height: 50.0,
                    width: 50.0,
                  ),
                  Text('Key/Access')
                ]),
              ),
            ),
          ],
        )
      ],
    )));
  }
}

我遇到一个错误,在android模拟器中,它呈现黄色和黑色条纹,而不是带有相应图像的按钮。

2 个答案:

答案 0 :(得分:0)

尝试删除Column上方的GridView小部件

答案 1 :(得分:0)

用Container(高度:..,宽度:double.infinity)包装

或使用SizedBox