如何创建一个捕获onTap事件的覆盖屏障,并将其传递给后面的小部件?

时间:2018-07-19 08:54:20

标签: flutter

我的问题是:如何创建一个“观看”并响应点击手势而不消耗它们的小部件?


我想创建一个TextField,以便在焦点突出时在字段下方的弹出式窗口中显示自动完成建议(类似于Google搜索)。

当用户在TextField之外点击屏幕时,叠加层应关闭,但不使用点击事件

例如,如果用户在可见建议叠加层时轻击复选框,则叠加层应关闭,并且应切换该复选框。

我看了Flutter的DropdownButton的来源,它显示了PopupRoute中的下拉列表,可以通过点击屏幕将其删除。在内部,PopupRoute创建一个屏幕填充ModalBarrier,该屏幕填充GestureDetector捕获了轻敲事件(但它消耗了手势事件,并且没有通过手势事件)。

1 个答案:

答案 0 :(得分:2)

您可以将HitTestBehavior设置为GestureDetector的情况下使用translusent