Flutter iOS Scaffold顶部点击无响应

组件树结构为Scaffold嵌套Scaffold时,在iOS有刘海屏的机型上,会出现子Scaffold顶部不响应点击事件的情况
页面结构如下:


10317259-b644e78da1fbffbc_副本.png

整个页面是个Scaffold,红色框也是一个Scaffold,这时黄色框部分无法响应点击事件

一顿排查发现Scaffold会把顶部statusbar高度预留出来,这一部分高度无法点击

解决方式有三种:
1.在父组件外面套一层SafeArea
但这样顶部会有边距,不是我想要的

2.子组件不使用Scaffold
我这里需要Scaffold里的floatButton,所以这个方案我也没用

3.子组件Scaffold外层套一个MediaQuery.removePadding,把顶部空间移除掉

MediaQuery.removePadding(
  context: context,
  removeTop: true,
  child: Scaffold(
    backgroundColor: Colors.white,
    floatingActionButton: _floatingBtn(),
    body: _initSubviews(),
  ),
)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容