android - 当我将 MediaQuery.of(context).padding.top 与 appBar 一起使用时,它返回 0.0。这是为什么?
问题描述
当我MediaQuery.of(context).padding.top
在小部件树中不使用导航栏时,它会返回实际的真实值。
Reloaded 1 of 529 libraries in 637ms.
I/flutter (31730): 24.0
但是当我将 appBar 放入小部件树时,它只返回 0.0。
Reloaded 1 of 529 libraries in 764ms.
I/flutter (31730): 0.0
有人可以帮忙说明为什么会这样吗?
解决方案
从这个属性的文档:
如果您使用了此填充(例如,通过构建一个在其布局中封装或说明此填充的小部件,以使子级不再暴露于此填充),您应该通过插入为小部件树中的后续后代删除此填充使用 MediaQuery.removePadding 工厂的新 MediaQuery 小部件。
由于顶部填充由导航栏占据,它不再暴露给它下面的小部件。
推荐阅读
- flutter - 如何在 Flutter 中制作这个我是 Flutter 的新手,所以如果有人知道
- firebase - 使用 gofiber firebase-auth 时获取“丢失或格式错误的令牌”
- c++ - C++,C++ 的 OpenCv 给出了错误,尽管它是正确构建的
- android - 如何检查与查尔斯的连接方法请求?
- ajax - JSF ajax - 重置延迟
- php - 如何检查是否启用了 JIT?
- flutter - 如何加密/解密列表
飘飘然 - logic - 条件评估时的 Github 操作
- ios - IOS 14 Admob 广告实施 App Tracking Transparency
- ios - IOS pkpass一次下载多个pass