我想在点击手势检测器时显示工具提示,长按GestureDetector
时执行不同的操作,如何实现?我已经编写了一些相关代码,但长按时仍显示工具提示,而不是访问我的selectDate()
功能
这是我当前代码:
GestureDetector(
onTap: () {
final dynamic tooltip = _toolTipKey.currentState;
tooltip.ensureTooltipVisible();
},
onLongPress: () {
if (widget.ticketData['status'] == 'active') {
showDialog(
context: context,
builder: (context) {
return ReusableConfirmationDialog(
titleText: 'changeDueDateTitle'.tr(),
contentText: 'changeDueDateDesc'.tr(),
declineButtonText: 'cancel'.tr(),
confirmButtonText: 'change'.tr(),
onDecline: () {
Navigator.pop(context);
},
onConfirm: () {
DevMode.log('start changing the due date');
_selectDate(context);
},
);
},
);
}
},
child: Tooltip(
key: _toolTipKey,
message: "Hello",
child: Container(
padding: const EdgeInsets.symmetric(horizontal: 11, vertical: 5),
decoration: BoxDecoration(
color: formBackgroundColor,
borderRadius: BorderRadius.circular(15),
),
child: Row(
children: [
Image.asset(
'assets/logo/calendar.png',
width: 20,
height: 20,
),
const SizedBox(width: 5),
],
),
),
),
),
2条答案
按热度按时间jogvjijk1#
使用
triggerMode: TooltipTriggerMode.manual
和键显示工具提示第一个
关于Tooltip的更多信息
bfnvny8b2#
在代码中创建此函数
这行
triggerMode: TooltipTriggerMode.tap,
将允许您在单击时显示工具提示。