MediaQuery
在 flutter
中有不少常用属性,下面主要介绍一些常用属性,如果还有其他的内容,可以到其他地方搜索,这边文章主要做个记录,以便日后查看
比如我们常用的属性
//获取屏幕尺寸
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
为键盘高度