【发布时间】:2019-11-14 09:55:31
【问题描述】:
我有一个 streamBuilder,但想在其中居中放置一个文本小部件,我尝试使用中心小部件,但它什么也没做,因为文本小部件不占用整个垂直空间。
看起来像这样:
StreamBuilder<List<Dtc>>(
key: ValueKey(1),
stream: bloc.dtcs,
builder: (context, snapshot) {
if (snapshot?.hasData ?? false) {
// dtcs list is empty
if (snapshot.data.isEmpty) {
return Text(
"My text to be centered"
);
} else {
return Row(
children: <Widget>[
Expanded(
child: Container(
height: MediaQuery.of(context).size.height - 230.0,
child: ListView.builder(
padding: const EdgeInsets.all(0),
itemBuilder: (BuildContext context, int index) {
if (index >= snapshot.data.length) return null;
return AWidget();
},
),
),
),
],
);
}
} else if (snapshot?.hasError ?? true) {
return errorIcon;
} else {
return loadingIcon;
}
},
);
是否有一个小部件可以让我将文本小部件垂直居中Text("My text to be centered");
【问题讨论】:
-
你能发布小部件的整个代码吗?这可能有助于了解父母如何包装您的
StreamBuilder。
标签: flutter dart flutter-layout