【发布时间】:2021-02-03 00:59:47
【问题描述】:
我的代码有问题而且我刚刚开始了解颤振我需要解决方案
错误:“未来”类型不是“小部件”类型的子类型
这是我的代码
Widget build(BuildContext context) {
return orderStatus ? Style1().showProgress() : buildContent();
}
Widget buildContent() => ListView.builder(
padding: EdgeInsets.all(10.0),
itemCount: orderModels.length,
// ignore: unrelated_type_equality_checks
itemBuilder: (context, index) => riders[index] == "NONE"
? processFoods[index] == "UserOrder"
? orderCards(globalModels, index)
: Container()
: riders[index] == "$nameRider"
? processFoods[index] == "Cooking"
? routeToGPS(index)
: Container()
: Container(),
);
Future<Null> routeToGPS(int index) async {
await Future.delayed(Duration(seconds: 3));
MaterialPageRoute route = MaterialPageRoute(
builder: (context) => NavGps(
orderModel: orderModels[index],
),
);
Navigator.push(context, route);
}
}
如果有不明白的地方可以要求解释谢谢帮助:D
【问题讨论】:
-
您在
ListView.builder中使用了routeToGPS()方法,该方法将Widget作为输入。方法routeToGPS的返回类型为Future<Null>,它不是Widget。这是导致问题的原因。