如何从ListView中删除自动SafeArea?

问题描述 投票:2回答:2

我刚刚添加了一个ListView作为Scaffold > Stack的孩子,它似乎在顶部有SafeArea。列没有这个问题。我有什么方法可以删除它吗?

Container(
  color: Colors.grey[100],
  child: ListView(
    children: <Widget>[
      Image(
        image: snapshot.data.hero,
        height: 300.0,
        fit: BoxFit.cover,
      ),
    ],
  ),
),

ListView enter image description here

enter image description here

flutter
2个回答
5
投票

来自ListView文档:

默认情况下,ListView将自动填充列表的可滚动末端,以避免MediaQuery填充指示的部分障碍。要避免此行为,请使用零填充属性覆盖。

所以修复是:

ListView(
  padding: EdgeInsets.zero,
  ...
);

1
投票

也找到了这个解决方案

MediaQuery.removePadding(
  context: context,
  removeTop: true,
  child: ListView(...),
)
© www.soinside.com 2019 - 2024. All rights reserved.