flutter获取状态栏高度及安全区域

Posted pjl43

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flutter获取状态栏高度及安全区域相关的知识,希望对你有一定的参考价值。

获取状态栏高度:

final double statusBarHeight = MediaQuery.of(context).padding.top;

所谓安全区域,就是适配现在一些刘海屏之类的非常规显示屏,在flutter中除了根据上面的方法获取到状态栏高度,给页面加对应的状态栏高度padding,还有一个专门的widget用来显示安全区域内容:SafeArea

下面是对比图:

技术分享图片

 1 Widget build(BuildContext context) {
 2   return Material(
 3     color: Colors.blue,
 4     child: SafeArea(
 5       child: SizedBox.expand(
 6         child: Card(color: Colors.yellowAccent),
 7       ),
 8     ),
 9   );
10 }

该widget可以设置四个方向是否启用安全区,例如不对底部设置安全区域,可以设置为:

Widget build(BuildContext context) {
  return Material(
    color: Colors.blue,
   bottom: false, child: SafeArea( child: SizedBox.expand( child: Card(color: Colors.yellowAccent), ), ), ); }

 


以上是关于flutter获取状态栏高度及安全区域的主要内容,如果未能解决你的问题,请参考以下文章

Flutter IphoneX 状态栏颜色无 app Bar

Android获取状态栏和标题栏的高度

uniapp 之 获取底部安全距离,状态栏高度等

uniapp 之 获取底部安全距离,状态栏高度等

uniapp 之 获取底部安全距离,状态栏高度等

flutter 屏幕宽高 状态栏高度