首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Flutter中的高级屏幕动画(如Instagram故事导航pop)?

Flutter中的高级屏幕动画(如Instagram故事导航pop)?
EN

Stack Overflow用户
提问于 2021-01-21 09:29:39
回答 1查看 397关注 0票数 0

如何才能制作出这种类型的动画过渡?我想把重点放在向下滚动时存在的“动态性”上,页面跟随滚动的手指,而不是弹出到特定的阈值。同时,如果没有超过滚动阈值,它也会在边上收紧,动画会自动将页面带回来。

在下面的链接中有我正在谈论的动画的视频,(抱歉,我不能压缩它,将它作为图像插入到这里)

IG Pop Animation - Link

简化问题:如何让整个页面在手指向下滚动时做出响应?使用以下代码,我可以在向下滚动时弹出屏幕,但我想添加动画。

代码语言:javascript
运行
复制
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);
  }
}
EN

回答 1

Stack Overflow用户

发布于 2021-01-21 11:56:26

尝试使用dismissible:

代码语言:javascript
运行
复制
return Dismissible(
  direction: DismissDirection.down,
  onDismissed: (_) => Navigator.pop(context),
  child: Scaffold(
    body: Container(),
  ),
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65819969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档