showBottomSheet 如何点击空白处关闭
时间: 2024-01-25 15:02:02 浏览: 150
默认情况下,当用户点击 `showBottomSheet` 显示出来的底部弹窗外的区域时,会自动关闭弹窗。如果你想自定义这个行为,可以设置 `backgroundColor` 属性来改变弹窗外部的背景颜色,然后在点击背景时自己手动关闭弹窗。
下面是一个示例代码:
```
showBottomSheet(
context: context,
builder: (BuildContext context) {
return Container(
height: 200,
color: Colors.white,
child: Column(
children: [
Text('这是一个底部弹出框'),
ElevatedButton(
onPressed: () {
Navigator.pop(context);
},
child: Text('关闭'),
),
],
),
);
},
backgroundColor: Colors.black.withOpacity(0.5),
);
```
在这个例子中,我们将 `backgroundColor` 属性设置为 `Colors.black.withOpacity(0.5)`,表示底部弹窗外的背景颜色为半透明黑色。当用户点击这个区域时,弹窗不会自动关闭,需要手动调用 `Navigator.pop(context)` 方法来关闭弹窗。注意:在这个例子中,我们在弹窗内部添加了一个关闭按钮,用于关闭弹窗,这也可以通过其他方式来实现。
阅读全文