我在屏幕上有一个长的可点击的列表项目列表.我需要实现的用户界面是从上到下滑入一个动作小工具,其中包含可以应用于屏幕上的选定项目的动作.
我已经 Select 了项目,但问题是,一旦我 Select 了第一个项目并从顶部显示对话框中的幻灯片,我就不能再点击屏幕的任何部分,因为对话框屏障挡住了整个屏幕.
我可以做些什么来消除这个障碍,这样我仍然可以在不关闭对话框的情况下点击列表项.
只有对话框上的操作才能关闭该对话框.
以下是我目前的对话设置:
Future<T?> showNonBlockingTopModalSheet<T>(BuildContext context, Widget child,
{bool barrierDismissible = false}) {
return showGeneralDialog<T?>(
context: context,
barrierDismissible: barrierDismissible,
barrierColor: Colors.transparent,
transitionDuration: const Duration(milliseconds: 250),
pageBuilder: (context, _, __) => child,
transitionBuilder: (context, animation, secondaryAnimation, child) {
return SlideTransition(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Material(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [child],
),
)
],
),
position: CurvedAnimation(parent: animation, curve: Curves.easeOutCubic)
.drive(
Tween<Offset>(
begin: const Offset(0, -1.0),
end: Offset.zero,
),
),
);
},
);
}