在 PageView 中只构建一次 Flutter GoogleMap

lac*_*cas 3 google-maps flutter

我有一个PageView .builder 和 3 个GoogleMap -s 在里面。

我第一次只需要创建 3 个小部件,我不想再次重建它们。现在,当我只是更改它在加载前闪烁一次的页面时,这很烦人。而且很慢。

有什么方法可以在该小部件上构建固定状态?

我试过:

自动KeepAliveClientMixin

@override bool get wantKeepAlive => true;

但没有工作。

Luc*_*Dog 8

也许您忘记调用super.build(context);build 方法。

像这样:

class TestInnerPage extends StatefulWidget {
  @override
  _TestInnerPageState createState() => _TestInnerPageState();
}

class _TestInnerPageState extends State<TestInnerPage>
    with AutomaticKeepAliveClientMixin {
  @override
  Widget build(BuildContext context) {
    /// Dont't forget this
    super.build(context);

    return Container();
  }

  @override
  // TODO: implement wantKeepAlive
  bool get wantKeepAlive => true;
}
Run Code Online (Sandbox Code Playgroud)