如何才能制作出这种类型的动画过渡?我想把重点放在向下滚动时存在的“动态性”上,页面跟随滚动的手指,而不是弹出到特定的阈值。同时,如果没有超过滚动阈值,它也会在边上收紧,动画会自动将页面带回来。
在下面的链接中有我正在谈论的动画的视频,(抱歉,我不能压缩它,将它作为图像插入到这里)
简化问题:如何让整个页面在手指向下滚动时做出响应?使用以下代码,我可以在向下滚动时弹出屏幕,但我想添加动画。
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.black,
body: GestureDetector(
onLongPressStart: (details) => _onLongPressStart(details),
onLongPressEnd: (details) => _onLongPressEnd(details),
onTapUp: (details) => _onTapUp(details),
onVerticalDragEnd: (details) => _onVerticalDragEnd(details),
child: Stack(
children: <Widget>[....],
),
),
);
}
void _onVerticalDragEnd(DragEndDetails dragEndDetails) {
if (dragEndDetails.velocity.pixelsPerSecond.direction > 0) {
Navigator.pop(context);
}
}
发布于 2021-01-21 11:56:26
尝试使用dismissible:
return Dismissible(
direction: DismissDirection.down,
onDismissed: (_) => Navigator.pop(context),
child: Scaffold(
body: Container(),
),
);
https://stackoverflow.com/questions/65819969
复制相似问题