我有这个代码,它将在数据库中获取提醒列表并将其显示在屏幕上。它适用于提醒列表。问题是当列表为空(没有提醒)时,我希望它显示一些类似“没有提醒”的文字。所以我尝试使用列、文本小部件,我将它们包裹在如下列表中,但屏幕上没有显示。
如果我删除 [],则会出错无法从方法“buildReminderList”返回“Card”类型的值,因为它的返回类型为“List”。< /p>
有谁知道如何在“即将到来”列表为空的情况下显示“没有提醒”这样的文字。
List<Widget> buildReminderList(List<Reminder> reminders) {
debugPrint(reminders.length.toString());
if (reminders != null)
return reminders.map((Reminder reminder)
=> ListTile()).toList();
else
return [Card(
child: ListTile(
title: Text("There is no reminder", style: TextStyle(fontWeight: FontWeight.bold)),
)
)];
}
答案 0 :(得分:0)
只需将 List<Widget>
替换为 Widget
:-
Widget buildReminderList(List<Reminder> reminders) {
debugPrint(reminders.length.toString());
if (reminders != null)
return reminders.map((Reminder reminder)
=> ListTile()).toList();
else
return Text("There is no reminder", style: TextStyle(fontWeight: FontWeight.bold));
}
答案 1 :(得分:0)
结果
试试这个方法
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class Test extends StatelessWidget {
List<Widget> buildReminderList() {
return [
Card(
child: ListTile(
title: Text("There is no reminder",
style: TextStyle(fontWeight: FontWeight.bold)),
),
),
];
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: ListView(
children: [
...buildReminderList().toList(),
],
),
),
);
}
}