我正在从Streambuilder填充ListView,并希望在AppBar标题中显示文档的长度/ nr。现在,每次流发生变化时,我都会调用SetState。它有效,但是“感觉”有点资源沉重。有什么想法吗?
谢谢。
最好, / j
StreamBuilder(
stream: Firestore.instance.collection('users').snapshots(),
builder: (context, snapshot) {
if (!snapshot.hasData) return const Text('Loading...');
appBarTitle = snapshot.data.documents.length;
Future.delayed(Duration.zero, () {
setState(() {
});
});
},
);
答案 0 :(得分:2)
您可以使用“流”构建器包装appBar的标题,以更新屏幕标题,例如此代码
AppBar(title: StreamBuilder<Object>(
stream: bloc.myStream,
builder: (context, snapshot) {
return yourCustomWidget();
}
)