AppBar大小变化时,随之改变的可变内边距问题。
创始人
2024-09-09 21:30:14
0

可以使用 MediaQuery.of(context).padding.top 来获取当前屏幕的顶部内边距大小,再根据 AppBar 的高度来计算出需要设置的内边距大小。

示例代码:

class MyPage extends StatefulWidget {
  @override
  _MyPageState createState() => _MyPageState();
}

class _MyPageState extends State {
  double appBarHeight = 80;
  EdgeInsetsGeometry contentPadding = EdgeInsets.zero;

  @override
  Widget build(BuildContext context) {
    contentPadding = EdgeInsets.only(top: MediaQuery.of(context).padding.top + appBarHeight);

    return Scaffold(
      appBar: AppBar(
        title: Text('My Page'),
        centerTitle: true,
        elevation: 0,
        backgroundColor: Colors.blueAccent,
        leading: IconButton(
          icon: Icon(Icons.arrow_back),
          onPressed: () {},
        ),
        actions: [
          IconButton(
            icon: Icon(Icons.search),
            onPressed: () {},
          ),
          IconButton(
            icon: Icon(Icons.menu),
            onPressed: () {},
          ),
        ],
      ),
      body: Container(
        padding: contentPadding,
        child: SingleChildScrollView(
          child: Column(
            children: [
              SizedBox(
                height: 100,
                child: Placeholder(),
              ),
              SizedBox(height: 20),
              SizedBox(
                height: 100,
                child: Placeholder(),
              ),
              SizedBox(height: 20),
              SizedBox(
                height: 100,
                child: Placeholder(),
              ),
              SizedBox(height: 20),
              SizedBox(
                height: 100,
                child: Placeholder(),
              ),
              SizedBox(height: 20),
              SizedBox(
                height: 100,
                child: Placeholder(),
              ),
              SizedBox(height: 20),
              SizedBox(
                height: 100,
                child: Placeholder(),
              ),
              SizedBox(height: 20),
              SizedBox(
                height: 100,
                child: Placeholder(),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

相关内容

热门资讯

最新技巧!潮汕掌上娱透视怎么买... 最新技巧!潮汕掌上娱透视怎么买,科技新星游牛牛辅助,存在挂教程(通报有开挂辅助下载);无需打开直接搜...
分享个大家!中至赣牌圈手机辅助... 您好:中至赣牌圈手机辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的...
避坑细节!约战辅助,九九山城辅... 避坑细节!约战辅助,九九山城辅助免费,必胜教程(发现有开挂辅助器)1、下载安装好九九山城辅助免费,进...
推荐一款!四川熊猫辅助软件免费... 推荐一款!四川熊猫辅助软件免费,新鸿狐辅助软件是真的吗,wepoke教程(推荐有开挂辅助下载);无需...
如何分辨真伪!方片十三张透视脚... 如何分辨真伪!方片十三张透视脚本,三哥玩辅助器免费下载,微扑克教程(了解有开挂辅助平台);无需打开直...
一分钟了解!钱塘十三水透视卦,... 一分钟了解!钱塘十三水透视卦,决战卡五星游戏辅助器,可靠技巧(推荐有开挂辅助平台);无需打开直接搜索...
玩家必备教程!心悦怎么开挂,微... 玩家必备教程!心悦怎么开挂,微信随意玩辅助器,透视教程(详细有开挂辅助器)1、下载安装好微信随意玩辅...
一分钟揭秘!湖南牵手胡子跑脚本... 一分钟揭秘!湖南牵手胡子跑脚本,微信小程序游戏辅助器,教你攻略(分析有开挂辅助脚本);无需打开直接搜...
记者发布!雀姬辅助脚本,拱趴游... 记者发布!雀姬辅助脚本,拱趴游戏诀窍,大神讲解(实测有开挂辅助插件);无需打开直接搜索加(薇:136...
玩家攻略!福建天天开心辅助器是... 玩家攻略!福建天天开心辅助器是真的码,微信小程序游戏破解微乐游戏,必备教程(原来有有开挂辅助挂);无...