Эшафот с полосой внизу, которая не должна быть там - PullRequest
0 голосов
/ 14 февраля 2020

Мой эшафот отображает внизу планку, например: image
, которую я там не поставил (я знаю, что это эшафот, потому что когда я его снимаю, планка исчезает). но я не могу сделать это без эшафот) это мой код:

class Home extends StatefulWidget {
  @override
  _HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {

  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    SystemChrome.setEnabledSystemUIOverlays([]);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.red,
      body: Column(
        children: <Widget>[
          Center(
            child: Text('Scaffold Bar test'),
          ),
          Container(
            height: MediaQuery.of(context).size.height - 88,
            child: ListView.builder(itemBuilder: (BuildContext context,int index) {
              return Container(
                height: 40.0,
                width: MediaQuery.of(context).size.width,
                color: index % 2 == 0 ? Colors.blue : Colors.orange,
              );
            }),
          ),
        ],
      ),
    );
  }
}

1 Ответ

2 голосов
/ 14 февраля 2020

Установите resizeToAvoidBottomPadding: false в Scaffold.

И используйте MediaQuery.removePadding с removeTop: true, чтобы удалить ненужные отступы в верхней части ListView.builder.

Используйте Expanded вместо получения высоты от MediaQuery.

class Home extends StatefulWidget {
  @override
  _HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {

  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    SystemChrome.setEnabledSystemUIOverlays([]);
  }

  @override
  Widget build(BuildContext context) {
    return MediaQuery.removePadding(
      context: context,
      removeTop: true,
      child: Scaffold(
        backgroundColor: Colors.red,
        resizeToAvoidBottomPadding: false,
        body: Column(
          children: <Widget>[
            Center(
              child: Text('Scaffold Bar test'),
            ),
            Expanded(
              child: ListView.builder(itemBuilder: (BuildContext context,int index) {
                return Container(
                  height: 40.0,
                  width: MediaQuery.of(context).size.width,
                  color: index % 2 == 0 ? Colors.blue : Colors.orange,
                );
              }),
            ),
          ],
        ),
      ),
    );
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...