在 onLongPress 之后不调用 onTapUp

Not*_*ire 6 uigesturerecognizer long-press flutter

我正在尝试创建一个上下文菜单,该菜单在长按后显示,同时将手指保持在对象上,然后您将选择一个选项(通过拖动手指)并抬起它以启动操作。

我注意到一些对我来说有点奇怪的事情。首先,代码:

    import 'package:flutter/material.dart';
    
    void main() {
      runApp(MaterialApp(
        home: Scaffold(
          body: GestureDetector(
            onLongPress: () {
              print("onLongPress");
            },
            onTapUp: (TapUpDetails details) {
              print("onTapUp");
            },
            child: Center(
              child: FlutterLogo(),
            ),
          ),
        ),
      ));
    }
Run Code Online (Sandbox Code Playgroud)

因此,如果我运行此程序,则在长按图标后,将onLongPress调用处理程序,但在抬起手指后onTapUp不会调用该处理程序。如果我注释掉onLongPress(所有 3 行)的处理程序,则在onTapUp调用长按后。我想同时处理onTapUponLongPress

任何想法为什么会发生这种情况?

Tre*_*ree 1

您可以包装另一个将处理点击的手势检测器。

我不确定当前的行为是否是一个错误,因此您可能需要将其提交给问题跟踪器。