MediaQueryflutter 中有不少常用特点,下面首要介绍一些常用特点,假如还有其他的内容,能够到其他地方查找,这边文章首要做个记录,以便日后查看

比方咱们常用的特点

//获取屏幕尺度
MediaQuery.of(context).size
//顺便提一下,当时组件渲染完毕之后的size
context.size

MediaQuery

MediaQuery 能够用来处理不少设备或者组件问题,经过该组件,能够更新各种内容,例如屏幕旋转,内边距等

其本来这样,其他的一些组特点不少都是基于该组件的

const MediaQuery({
    Key key,
    @required this.data,
    @required Widget child,
})

MediaQuery.removePadding

MediaQuery的工厂构造办法,经过该特点能够设置由于体系导致的内边距问题,例如:ios翻滚视图的边距等,使用时,只需要将 removeTop设置为true,使用它的child包裹咱们的组件即可

MediaQuery.removePadding({
  Key? key,
  required BuildContext context,
  bool removeLeft = false,
  bool removeTop = false,
  bool removeRight = false,
  bool removeBottom = false,
  required Widget child,
});

例如:

MediaQuery.removePadding(
    removeTop: true,
    context: context,
    child: ListView(
        children:[]
    ),
);

MediaQuery.of(context)

只需要传入当时 context 就能够获取体系的一些信息,如下所示,能够合理用来调整咱们的布局,下面为一些常用特点

size: 屏幕尺度

devicePixelRatio: 屏蔽像素百分比

platformBrightness: 为明暗风格(正常形式、漆黑形式)

orientation: 屏幕方向

viewInsets为键盘弹出时等遮挡屏幕边距,其中viewInsets.bottom 为键盘高度