繁体   English   中英

我的第二个 AppBar Flutter 上奇怪的顶部填充

[英]Strange Top Padding on my second AppBar Flutter

我的应用奇怪的顶部填充屏幕

我做了两个类:第一个有第一个 AppBar 并调用第二个也有一个粘性 AppBar 并显示可滚动项目列表。 但是,我在第二个 AppBar 中有一个奇怪的顶部填充。 我尝试了很多东西,但似乎没有任何效果。

@override
  Widget build(BuildContext context) {
    return MaterialApp(
        home: Scaffold(
            extendBodyBehindAppBar: true,
            bottomNavigationBar: BottomNavBar(0, _currentAccount),
            appBar: PreferredSize(
              preferredSize:
                  Size.fromHeight(MediaQuery.of(context).size.height / 7),
              child: Column(
                children: [
                  Container(
                    width: MediaQuery.of(context).size.width,
                    decoration: const BoxDecoration(
                        gradient: LinearGradient(
                            begin: Alignment.topRight,
                            end: Alignment.bottomLeft,
                            colors: <Color>[
                          Color(0xFF894c56),
                          Color(0xFFa80d0d)
                        ])),
                    child: Padding(
                        padding: const EdgeInsets.only(bottom: 30),
                        child: Column(
                            crossAxisAlignment: CrossAxisAlignment.start,
                            mainAxisAlignment: MainAxisAlignment.start,
                            children: [
                              const Padding(
                                  padding: EdgeInsets.only(top: 50, left: 5),
                                  child: Text(
                                    'Votre évenement ',
                                    style: TextStyle(
                                        fontSize: 15, color: Colors.grey),
                                  )),
                              Padding(
                                padding: const EdgeInsets.only(top: 5, left: 5),
                                child: Text(
                                  event,
                                  style: const TextStyle(
                                      color: Colors.white, fontSize: 17),
                                ),
                              )
                            ])),
                  )
                ],
              ),
            ),
            body: ListPrestat('Traiteur', _currentAccount)
            // ListPrestat('Traiteur', _currentAccount)

            ));
  }

这是我的第一个类的代码,它在下面调用 ListPrestat 类:

@override
  Widget build(BuildContext context) {
    return SizedBox(
      width: MediaQuery.of(context).size.width,
      height: MediaQuery.of(context).size.height   ,
       //   -(MediaQuery.of(context).size.height / 6 + 56),
      child: CustomScrollView(
        slivers: [
          SliverAppBar(
            toolbarHeight: 50,
            expandedHeight: 0,
            backgroundColor: const Color(0xFFDCDCDC),
            pinned: true,
            leading: IconButton(
              icon: const Icon(
                Icons.arrow_back,
                color: Color(0xFFDC3535),
              ),
              onPressed: () {
                Navigator.push(
                  context,
                  MaterialPageRoute(builder: (context) => MainScreen(_currentAccount)),
                );
              },
            ),
            centerTitle: true,
            shadowColor: Colors.black,
            elevation: 10,
            bottom: const PreferredSize(
                preferredSize: Size.fromHeight(0),
                child: TagList(ListCat: 'brouette')),
            title: Container(
                width: MediaQuery.of(context).size.width,
                padding: EdgeInsets.all(MediaQuery.of(context).size.width / 4),
                child: Text(
                  _currentCat,
                  style: const TextStyle(
                    color: Colors.black,
                    fontSize: 16.0,
                    fontWeight: FontWeight.w700,
                  ),
                )),
          ),
          SliverFixedExtentList(
            itemExtent: 110.0,
            delegate: SliverChildListDelegate(
              [
                for (int index = 0; index < 5; index++)
                  CustomListItem2(
                    thumbnail: ClipRRect(
                        borderRadius: BorderRadius.circular(8.0),
                        child: AspectRatio(
                          child: Image.network(
                            growableList[index],
                            width: 100.0,
                            height: 100.0,
                            fit: BoxFit.fill,
                          ),
                          aspectRatio: 1 / 1,
                        )),
                    title: 'Chez Luigi',
                    subtitle: 'Les meilleurs pizza hors d\'italie.',
                    ListCat: 'Food Truck',
                  ),
              ],
            ),
          )
        ],
      ),
    );
  }

您知道是什么导致了这种填充以及如何解决这个问题吗?

用脚手架包装你的第二个班级

Scaffold(
        body: SizedBox(
              width: MediaQuery.of(context).size.width,
              height: MediaQuery.of(context).size.height ,),
              ...................
        )

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM