无法将参数类型'_PostCreateRoute'分配给参数类型'Route <map>

时间:2019-01-24 10:17:38

标签: dart flutter

我正在尝试使用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)
      } 
 }

}

1 个答案:

答案 0 :(得分:0)

您似乎将_PostCreateRoute()作为参数传递给push函数,而push函数仅接受类型为Route()的参数。

您首先需要将类包装在MaterialPageRoute (Android)CupertinoPageRoute (iOS)之类的路由对象中。

您可以尝试以下操作:

Navigator.push(_context, MaterialPageRoute(builder: (BuildContext _context) => _PostCreateRoute(_context)));

根据要使用的路由类型,确保导入material.dartcupertino.dart