微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flutter MediaQuery 为 iOS 上的底部导航添加了额外的底部填充

如何解决Flutter MediaQuery 为 iOS 上的底部导航添加了额外的底部填充

我正在使用 MediaQuery 禁用文本比例因子,以便手机设置中的字体大小更改不会更改应用中的文本大小。

它仅在 iOS 上发生。

代码如下:

class MainPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    MainBloc mainBloc = BlocProvider.of<MainBloc>(context);
    NewsBloc newsBloc = BlocProvider.of<NewsBloc>(context);

    List<Widget> pages = getPages(newsBloc);

    return SafeArea(
      child: MediaQuery(
        data: MediaQuery.of(context).copyWith(textScaleFactor: 1),child: BlocBuilder(
            cubit: mainBloc,builder: (context,state) {
              if (state is Pagedisplayed) {
                return buildPages(mainBloc,state,pages);
              }
              return Center(
                child: Text('Something went wrong.'),);
            }),),);
  }

您可以在此处查看结果。

enter image description here

当我删除 MediaQuery 时,就可以了。

class MainPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    MainBloc mainBloc = BlocProvider.of<MainBloc>(context);
    NewsBloc newsBloc = BlocProvider.of<NewsBloc>(context);

    List<Widget> pages = getPages(newsBloc);

    return SafeArea(
      child: BlocBuilder(
          cubit: mainBloc,state) {
            if (state is Pagedisplayed) {
              return buildPages(mainBloc,pages);
            }
            return Center(
              child: Text('Something went wrong.'),);
          }),);

这是结果。

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。