我正在尝试使用flutter创建一个社交网站。这是与提要相关的页面,该页面存储是否有供用户使用的提要以及是否有提要显示它。我在提要更新期间使用异步方法来执行操作,因此在创建按动操作时,它在创建PostCreateRoute对象时显示错误,无法将参数类型'_PostCreateRoute'分配给参数类型'Route'。而且我是新手,如果有人可以帮助我,那就太好了。
class _FeedActionButtonState extends State<FeedActionButton> {
BuildContext _context;
@override
Widget build(BuildContext context) {
_context = context;
return new FloatingActionButton(
child: new Icon(Icons.add, color:Theme.of(context).iconTheme.color),
onPressed: onPressed,
backgroundColor: Colors.white);
}
onPressed() async{
Mappost=await
Navigator.of(_context).push(new_PostCreateRoute(_context));
if (post!=null &&widget.onPosted!=null){
this .widget.onPosted(post)
}
}
}
答案 0 :(得分:0)
您似乎将_PostCreateRoute()
作为参数传递给push函数,而push函数仅接受类型为Route()
的参数。
您首先需要将类包装在MaterialPageRoute (Android)
或CupertinoPageRoute (iOS)
之类的路由对象中。
您可以尝试以下操作:
Navigator.push(_context, MaterialPageRoute(builder: (BuildContext _context) => _PostCreateRoute(_context)));
根据要使用的路由类型,确保导入material.dart
或cupertino.dart
。