如何避免 Flutter 页面转换期间出现卡顿(动画滞后)

Sam*_*nli 9 transition dart flutter

我有两页,Page A并且Page B。要从Page A到进行转换Page B,我使用Navigation.push()

  Navigator.push(
    context,
    CupertinoPageRoute(...)
  );
Run Code Online (Sandbox Code Playgroud)

然而,这种过渡有很多卡顿和丢帧现象。(是的,我在配置文件模式下运行)

我想到的原因之一是Page B有如此多的重型 UI 渲染(例如 Google 地图和图表),而且我还注意到当页面滑动动画发生时,Page B渲染已经开始。

我试图了解如何改善这种体验,也许可以通过某种方式预加载Page B

我已经从 Github 问题(tldr use )中读到了这个建议Future.microtask((),但它对我不起作用。将不胜感激任何帮助或建议。

Kau*_*dru 0

尝试在加载页面 B 中的初始任务之前添加一个小的延迟。也许可以使用 Future.delayed()