我有这个用户界面: 当用户点击右侧时,我们会转到下一个故事,左侧我们会转到上一个故事,并按住任意位置应停止顶部的自动加载。我目前正在使用
GestureDetector
并使用三个回调
onTap
转到下一个或上一个故事onTapDown
暂停加载程序onTapUp
恢复加载程序问题是
onTap
被 onTapUp
调用,所以当我尝试暂停(例如按住右侧)时,在我抬起手指后它会立即转到下一个故事。
尝试使用 onHorizontalDragStart、onHorizontalDragEnd 和 onHorizontalDragUpdate 的组合,而不是 onTapDown 和 onTapUp。这将使您能够区分点击和拖动,从而更好地控制暂停和恢复操作。
GestureDetector(onHorizontalDragStart: (details) {
setState(() {
_isLoading = true;
});
},
onHorizontalDragEnd: (details) {
setState(() {
_isLoading = false;
});
},
onHorizontalDragUpdate: (details) {
// You can handle swipe gestures here if needed
},