flutter 模态框 不遮挡导航栏
时间: 2023-07-29 16:14:38 浏览: 89
在 Flutter 中,可以使用 `showDialog` 方法来弹出模态框。默认情况下,模态框会遮挡整个屏幕,包括导航栏。如果你想让模态框不遮挡导航栏,可以通过设置 `barrierDismissible` 和 `barrierColor` 来实现。
具体来说,`barrierDismissible` 参数控制用户是否能够通过点击模态框外部来关闭模态框。如果你想让用户不能关闭模态框,可以将其设置为 `false`。而 `barrierColor` 参数则控制模态框外部的颜色。将其设置为透明色即可让模态框不遮挡导航栏。
以下是一个示例代码:
```dart
showDialog(
context: context,
barrierDismissible: false,
barrierColor: Colors.transparent,
builder: (BuildContext context) {
return AlertDialog(
title: Text('My Dialog'),
content: Text('This is my dialog.'),
actions: <Widget>[
FlatButton(
child: Text('OK'),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
},
);
```
这个示例中,我们将 `barrierDismissible` 设置为 `false`,表示用户不能通过点击模态框外部来关闭模态框。同时,我们将 `barrierColor` 设置为透明色,使得模态框不会遮挡导航栏。
阅读全文