我正在开发一个 Flutter 应用程序,在我的 Main
route ,我有一个 Grid List
,其中填充了 DB 检索到的元素。
当 Grid 为空时,我想布局一个 Text()
消息,或类似的东西,
永久。
我用
list() {
return Container(
child: FutureBuilder(
future: pets,
builder: (context, snapshot) {
if (!snapshot.hasData || snapshot.data == null) {
return emptyGrid();
}
else
return imageGrid(snapshot.data);
},
),
);
}
emptyGrid 在哪里
Container emptyGrid() {
return Container(
child: Center(
child: Column(
children: <Widget>[
Text("No Data Found")
],
),
),
);
}
问题是,emptyGrid
布局正确,但之后立即消失。
最佳答案
您需要修改您的 list()
如下:
您需要检查列表长度是否为零。
list() {
return Container(
child: FutureBuilder(
future: pets,
builder: (context, snapshot) {
if (!snapshot.hasData || snapshot.data == null) {
return Text('Loading.....');
} else if (snapshot.data.length == 0) {
return emptyGrid();
} else {
return imageGrid(snapshot.data);
}
},
),
);
}
关于list - 如果 Flutter 中的网格列表为空,则插入一个 Text(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57252998/