代码之家  ›  专栏  ›  技术社区  ›  Figen Güngör

从一个材质应用程序切换到另一个材质应用程序时,会出现短时间的黑屏

  •  0
  • Figen Güngör  · 技术社区  · 7 年前

    从一个材质应用程序切换到另一个材质应用程序时,会出现短时间的黑屏。仅当我设置MaterialApp的localizationDelegates时才会发生这种情况。

    您可以运行以下回购来复制发行:

    https://github.com/figengungor/localization_black_screen

    我不知道是什么导致了黑屏。你知道吗?

    1 回复  |  直到 7 年前
        1
  •  2
  •   Rémi Rousselet    7 年前

    Foo
     MaterialApp
    

    Foo
      Bar
        MaterialApp
    

    这使得颤振很难重置的状态 MaterialApp

    一般来说,你应该避免这样做。最好是始终插入 Bar 使用空数据,或使用 GlobalKey 像这样的:

    final key = GlobalKey();
    // ...
    
    Widget build(BuildContext context) {
      final app = MaterialApp(key: key);
      return someCondition
        ? Bar(child: app)
        : app;
    }
    

    有目的地重用以前的 Element

    推荐文章