如何获取系统导航栏的高度?

Posted

技术标签:

【中文标题】如何获取系统导航栏的高度?【英文标题】:How to get the height for the system navigation bar? 【发布时间】:2019-09-11 02:10:31 【问题描述】:

我正在尝试获取系统导航栏的高度,以便我可以相应地计算其他小部件的高度。

我能够得到屏幕的高度。有没有办法获得可用高度?

usable_height = total_height-(status_bar_height + navigation_bat_height)

我正在使用这种方法来获取屏幕总尺寸:

double getScreenHeight(BuildContext context) 
  return MediaQuery.of(context).size.height;

【问题讨论】:

【参考方案1】:

如果您的Widgets 需要知道他们可用的尺寸,那么您可以将它们包装在LayoutBuilder 中,这将具有您可用的宽度和高度Widget

在此处观看官方示例: https://www.youtube.com/watch?v=IYDVcriKjsw

一些例子:

How can I layout widgets based on the size of the parent? https://flutterwidgets.io/widget-of-the-week-layoutbuilder.html

但如果想知道AppBar 的高度,那么AppBar height in Flutter

【讨论】:

以上是关于如何获取系统导航栏的高度?的主要内容,如果未能解决你的问题,请参考以下文章

如何获取Android手机底部导航栏的高度

如何以编程方式获取 Android 导航栏的高度和宽度?

以编程方式获取导航栏的高度

iOS 获取导航栏和状态栏的高度

如何在引导程序中获取窗口的高度和宽度

ios 获取导航栏和状态栏高度,针对iPhoneX