代码之家  ›  专栏  ›  技术社区  ›  Vyacheslav

颤振的动力响应

  •  0
  • Vyacheslav  · 技术社区  · 7 年前

    我必须动态地更改AppBar的外观和项目(通过点击其他UI元素)。 最好的方法是什么?

    return Scaffold(
          appBar: StreamBuilder(
              stream: bloc.tasks,
              builder: (context, AsyncSnapshot<List<UserTask>> tasks) {
                return new AppBar();/// my setup is here
              }),
    

    但这显然是不可编译的。

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

    appBar 需要一个实现 PreferredSizeWidget ,及 StreamBuilder 不是一个。

    PreferredSize :

    Scaffold(
      appBar: PreferredSize(
        preferredSize: const Size(double.infinity, kToolbarHeight),
        child: // StreamBuilder
      ),
    )