首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在从一个屏幕传送到另一个屏幕时显示错误

在从一个屏幕传送到另一个屏幕时显示错误
EN

Stack Overflow用户
提问于 2019-07-15 05:49:47
回答 1查看 1.9K关注 0票数 0

我从一个屏幕移动到另一个屏幕,但它显示了路由方面的错误。我的第一个屏幕名为VenueOption,第二个屏幕是PlayerOption

这是场地选项课

代码语言:javascript
复制
class VenueOption extends StatelessWidget {
  final String userType;

  const VenueOption({Key key, @required this.userType}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: ProfileBoard(
        userType: userType,
      ),
    );
    /*return MaterialApp(
      debugShowCheckedModeBanner: false,
      home:Scaffold(
      body: ProfileBoard(
        userType: userType,
      ),)
    );*/
  }
}

ProfileBoard中有一个按钮,这个类是状态类,并通过这个方法导航到'PlayerOption‘。

代码语言:javascript
复制
 void pushToDashboard(BuildContext context) {
      Navigator.push(
        context,
        MaterialPageRoute(builder: (context) => PlayerOption()),
      );
      // Navigator.push(context, MaterialPageRoute(builder: (context) => VenuProfile(userType: userType,)),);
    }

PlayerOption

代码语言:javascript
复制
class PlayerOption extends StatefulWidget {
  @override
  _PlayerOptionState createState() => _PlayerOptionState();
}

class _PlayerOptionState extends State<PlayerOption> {
  @override
  Widget build(BuildContext context) {

 return Scaffold(
   resizeToAvoidBottomInset:false,
   body: PlayerOptionHome(),
 );
   /* return MaterialApp(
      debugShowCheckedModeBanner: false,
      home:Scaffold(
        resizeToAvoidBottomInset:false,

        body: PlayerOptionHome(),

      )
    );*/
  }
}

引发以下NoSuchMethodError > _OverlayEntry-OverlayEntryState>#be2a0:调用getter 'status‘on > null。接收方: null尝试调用:当异常>引发时的状态,这是堆栈:> #0 (package:flutter/src/widgets/routes.dart:1239:27) (dart:core-修补程序/object_patch.dart:50:5)> #1 ModalRoute._buildModalBarrier Object.noSuchMethod > #2 _OverlayEntryState.build Object.noSuchMethod> #3 StatefulElement.build (package:flutter/src/widgets/framework.dart:3825:27) > #4 ComponentElement.performRebuild (包:ModalRoute._buildModalBarrier)/src/widget/framework.dart work.dart:3739:15)> #5 Element.rebuild (package:flutter/src/widgets/framework.dart:3722:5) > #6 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3722:5)> #7 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:3864:11) 另一个异常被抛出: NoSuchMethodError:在null上调用getter 'status‘。

我用'VenueOptiontoPlayerOptionbut when I tried to call another screen fromPlayerOptiontoPlayerConnect制作了PlayerOption,现在屏幕从MaterialApp的显示错误中导航

另一个异常被抛出:>‘package:flutter/src/widget/Naviator.dart’:Failed断言: line > 1562 pos 12:'!_debugLocked':不是真。

代码语言:javascript
复制
class PlayerConnect extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: FeedView(),
    );
  }
}
EN

回答 1

Stack Overflow用户

发布于 2019-07-15 06:16:00

尝尝这个

代码语言:javascript
复制
class VenueOption extends StatelessWidget {
  final String userType;
  BuildContext ctx;

  const VenueOption({Key key, @required this.userType}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    ctx = context;
    return Scaffold(
      body: ProfileBoard(
        userType: userType,
      ),
    ); 
  }
 void pushToDashboard() {

    Navigator.of(ctx).push(MaterialPageRoute(
              builder: (BuildContext context) => PlayerOption()));
 }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57033841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档