Dart 颤振的动力响应

Dart 颤振的动力响应,dart,flutter,Dart,Flutter,我必须动态地更改AppBar的外观和项目(通过点击其他UI元素)。 最好的方法是什么 我测试了几种方法。比如说, return Scaffold( appBar: StreamBuilder( stream: bloc.tasks, builder: (context, AsyncSnapshot<List<UserTask>> tasks) { return new AppBar();/// m

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

我测试了几种方法。比如说,

return Scaffold(
      appBar: StreamBuilder(
          stream: bloc.tasks,
          builder: (context, AsyncSnapshot<List<UserTask>> tasks) {
            return new AppBar();/// my setup is here
          }),
返回脚手架(
appBar:StreamBuilder(
流:bloc.tasks,
生成器:(上下文,异步快照任务){
return new AppBar();///我的安装程序在这里
}),

但这显然是不可编译的。

appBar
需要一个实现
PreferredSizeWidget
的小部件,而
StreamBuilder
不是

您可以将该树包装成
首选大小

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

这对我来说太完美了。