Я пытаюсь создать контекстное меню, которое будет отображаться после длительного нажатия, удерживая палец на объекте, после чего вы выберете опцию (перетаскивая палец) и поднимите ее, чтобы инициировать действие.
Используя Флаттер, я заметил кое-что, что для меня немного странно.Итак, во-первых, код:
import 'package:flutter/material.dart';
void main() {
runApp(new MaterialApp(
home: new Scaffold(
body: new GestureDetector(
onLongPress: () {
print("onLongPress");
},
onTapUp: (TapUpDetails details) {
print("onTapUp");
},
child: new Center(
child: new FlutterLogo(),
),
),
),
));
}
Итак, если я запускаю это, после долгого нажатия на значок, то вызывается обработчик для «onLongPress», но после поднятия пальца «onTapUp» не вызывается.Если я закомментирую обработчик для «onLongPress» (все 3 строки), то после долгого нажатия вызывается «onTapUp».Я хотел бы обрабатывать и onTapUp, и onLongPress.
Есть идеи, почему это происходит?Я делаю что-то неправильно ?Есть ли другой способ сделать это?
Я попытался отладить это, но я подумал, что, возможно, вы, ребята, можете мне помочь (хотя отладка это было весело :)).
Спасибозаранее