showModalBottomSheet刚刚注意到,当设置为时,顶部 SafeArea 被忽略isScrollControlled: true。(我希望我的模式适合屏幕)有人找到了修复它的方法吗?
showModalBottomSheet(
context: context,
isScrollControlled: true,
builder: (context) => MyModal(),
)
Run Code Online (Sandbox Code Playgroud)
我的测试模式
class MyModal extends StatelessWidget {
@override
Widget build(BuildContext context) {
return SafeArea(
child: Column(
children: <Widget>[
Text('Modal'),
Expanded(
child: Container(
color: Colors.red,
))
],
),
);
}
}
Run Code Online (Sandbox Code Playgroud)
输出
我通过设置模式内容的高度暂时修复了它
SafeArea(
child: Container(
height: MediaQuery.of(context).size.height - 80,
child: Column(
children: ...
Run Code Online (Sandbox Code Playgroud)
输出
小智 -3
如果您正在使用GetX 尝试一下
final padding = MediaQuery.of(Get.context!).viewPadding;
Run Code Online (Sandbox Code Playgroud)
否则,您可以将父上下文作为参数传递
final padding = MediaQuery.of(parentContext).viewPadding;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3188 次 |
| 最近记录: |