flutter中经常需要获取很多系统宽高或者某个widget的宽高

1:手机屏幕的宽高,注意,系统提供两个方法,一个是MediuQuery.of(context).size.width,一个是window.physicalSize.width,这两个是有区别的,第一个是逻辑宽度,第二个是物理宽度,记住公式(物理宽度=逻辑宽度*密度系数),我们开发里面用的宽高基本上都是逻辑宽高,系统会帮我们自动转换成实际宽高

2:某个widget的宽高

final GlobalKey globalKey = GlobalKey();

container (
key: globalKey,
)

final width = globalKey.currentContext.size.width;
final height = globalKey.currentContext.size.height;
 

顶部状态栏高度

MediaQuery.of(context).padding.top

底部功能栏,现在有些手机没有了,老手机大部分都有

MediaQuery.of(context).padding.bottom

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐