【发布时间】:2021-03-16 21:05:52
【问题描述】:
我正在寻找一个类似于AbsorbPointer 的小部件,它可以吸收滑动动作。目标是允许“点击”动作传递给孩子,但让父母处理“滑动”动作。
如果可能的话,我还想根据方向区分吸收(例如仅吸收垂直运动)。
感谢您的帮助,
【问题讨论】:
我正在寻找一个类似于AbsorbPointer 的小部件,它可以吸收滑动动作。目标是允许“点击”动作传递给孩子,但让父母处理“滑动”动作。
如果可能的话,我还想根据方向区分吸收(例如仅吸收垂直运动)。
感谢您的帮助,
【问题讨论】:
您可以使用GestureDetector 来检测点击行为和滑动动作
GestureDetector(
child: Widget(), // your widget
onTap: () { // Tap behavior listener
// your tap logic
},
onHorizontalDragUpdate: (DragUpdateDetails details) { // Swipe behavior listener
print(details.primaryDelta); // Positive is left to right, Negative is right to left
// your swipe logic
},
)
使用两个GestureDetector,您可以使用监听器onHorizontalDragUpdate 扭曲父级以检测滑动动作,同时使用监听器onTap 扭曲子级以检测点击行为
【讨论】: