Я знаю, что есть довольно много вопросов с похожим названием «NoSuchMethodError: метод« # что-то # »был вызван для нуля. 'И обычно эта проблема возникает, когда вы пытаетесь получить доступ к методу нулевого объекта.Но в моем случае это исключение показывается, когда я пытаюсь добавить следующий код в мой StatefulWidget
:
_handleMyBusinessesTap() {
Navigator.of(context).push(
MaterialPageRoute(
builder: (context) => PageBusinessList(
firebaseUser: widget.firebaseUser,
),
),
);
}
Как только я пытаюсь использовать объект Navigator в своем коде, я получаю это исключение.Единственное отличие, которое я могу себе представить, это то, что я имею на этой странице от других страниц, на которых объект Navigator не вызывает никаких проблем, состоит в том, что я строю свою страницу следующим образом:
Widget build(BuildContext context) {
return new DefaultTabController(
length: 3,
child: new Scaffold(
appBar: _buildAppBar(),
drawer: _buildDrawer(),
body: _buildBody(),
),
);
}
Я использую здесь DefaultTabController
содержит тело из 3 страниц:
Widget _buildBody() {
return TabBarView(
children: [
MyCardScreen(),
ReceivedScreen(),
SentScreen(),
],
);
}
Метод _handleMyBusinessesTap
- это один из вариантов, которые у меня есть в ящике, и я хочу перенести меня на новую страницу, но по какой-то причине, как только ядобавьте это, это бросает это исключение в заголовке.Кто-нибудь сталкивался с этой проблемой и знает, как ее следует обрабатывать?
вот метод buildDrawer:
Widget _buildDrawer() {
return Drawer(
child: ListView(
padding: EdgeInsets.zero,
children: <Widget>[
UserAccountsDrawerHeader(
accountName: _buildAccountNameWidget(),
accountEmail: _buildAccountEmailWidget(),
currentAccountPicture: _buildAccountCircleAvatar(),
),
ListTile(title: Text("My Default Business Card"), onTap: _handleMyDefaultBusinessCardTap()),
ListTile(title: Text("My Businesses"), onTap: _handleMyBusinessesTap()),
ListTile(title: Text("Terms and Conditions"), onTap: _handleTermsAndConditionsTap()),
ListTile(title: Text("Privacy Policy"), onTap: _handlePrivacyPolicyTap()),
ListTile(title: Text("Log Out"), onTap: _handleLogOutTap()),
],
),
);
}
здесь есть остальная часть стека:
I / flutter (722): ══╡ ИСКЛЮЧЕНИЕ, ЗАПИСАННОЕ БИБЛИОТЕКОЙ ВИДЖЕТОВ ╞═══════════════════════════════════════════════════════════ I / flutter (722): Было сгенерировано следующее утверждение при построении PageMain (грязно, зависимости: [_InheritedTheme, I /flutter (722): _LocalizationsScope- [GlobalKey # b039d]], состояние: _PageMainWidgetState # e33af): I / flutter (722): setState () или markNeedsBuild () вызывается во время сборки.I / flutter (722): этот виджет наложения нельзя пометить как необходимый для сборки, потому что инфраструктура уже находится в I / flutter (722): процесс создания виджетов.Виджет может быть помечен как необходимый для сборки во время фазы I / развевания (722): только если один из его предков в настоящее время строит.Это исключение допустимо, потому что фреймворк I / flutter (722): создает родительские виджеты перед потомками, что означает, что грязный потомок будет всегда создаваться.I / flutter (722): в противном случае платформа может не посетить этот виджет на этом этапе сборки.I / flutter (722): виджет, для которого были вызваны setState () или markNeedsBuild (): I / flutter (722): Overlay- [LabeledGlobalKey # 51a6b] (состояние: OverlayState # 7d0ac (записи: I / flutter (722)): [OverlayEntry # f42cb (непрозрачный: ложный; keepState: false), OverlayEntry # d6b18 (непрозрачный: ложный; I / flutter (722): keepState: true), OverlayEntry # 75d78 (непрозрачный: ложный; keepState: false), I/ flutter (722): OverlayEntry # 02406 (непрозрачный: ложный; keepState: true), OverlayEntry # 8f4e5 (непрозрачный: ложный; I / flutter (722): keepState: false), OverlayEntry # 11c40 (непрозрачный: false; keepState: true)])) I / flutter (722): виджет, который в настоящее время создавался при совершении вызывающего вызов вызова, был: I / flutter (722): PageMain (грязный, зависимости: [_InheritedTheme, _LocalizationsScope- [GlobalKey # b039d]], состояние: I / flutter (722): _PageMainWidgetState # e33af) I / flutter (722): Когда было сгенерировано исключение, это был стек: I / flutter (722): # 0 Element.markNeedsBuild.(пакет: flutter / src / widgets / framework.dart: 3503: 11) I / flutter (722): # 1 Element.markNeedsBuild (пакет: flutter / src / widgets / framework.dart: 3529: 6) I / flutter (722): # 2 State.setState (пакет: flutter / src / widgets / framework.dart: 1133: 14) I / flutter (722): # 3 OverlayState.insertAll (пакет: flutter / src / widgets / overlay.dart:346: 5) I / flutter (722): # 4 OverlayRoute.install (пакет: flutter / src / widgets / rout.dart: 43: 24) I / flutter (722): # 5 TransitionRoute.install (пакет: flutter /src / widgets / rout.dart: 180: 11) I / flutter (722): # 6 ModalRoute.install (пакет: flutter / src / widgets / rout.dart: 895: 11) I / flutter (722): # 7NavigatorState.push (пакет: flutter / src / widgets / navigator.dart: 1742: 11) I / flutter (722): # 8 _PageMainWidgetState._handleMyBusicationsTap (пакет: bizooc_client / pages / page_main.dart: 86: 27)I / flutter (722): # 9 _PageMainWidgetState._buildDrawer (пакет: bizooc_client / pages / page_main.dart: 60: 57) I / flutter (722): # 10 _PageMainWidgetState.build (пакет: bizooc_client / pages / page_main)33:17) I / flutter (722): # 11 StatefulElement.build (пакет: flutter / src / widgets / framework.dart: 3825: 27) I / flutter (722): # 12 ComponentElement.performRebuild (пакет: flutter /src / widgets / framework.dart: 3739: 15) I / flutter (722): # 13 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5) I / flutter (722): # 14ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5) I / flutter (722): # 15 StatefulElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3864: 11) I/ flutter (722): # 16 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5) I / flutter (722): # 17 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter (722): # 18 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722): # 19 SingleChildRenderObjectElement.mount (пакет: flutter / src / widgets / framework.dart: 4876: 14) I / flutter (722): # 20 Element.inflateWidget (пакет: flutter / src / widgets / framework.дротик: 2961: 14) I / flutter (722): # 21 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722): # 22 ComponentElement.performRebuild (пакет:flutter / src / widgets / framework.dart: 3750: 16) I / flutter (722): # 23 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5) I / flutter (722):# 24 ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5) I / flutter (722): # 25 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5) I / flutter (722): # 26 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter (722): # 27 Element.updateChild (пакет: flutter / src / widgets/framework.dart:2764:12) I / flutter (722): # 28 SingleChildRenderObjectElement.mount (пакет: flutter / src / widgets / framework.dart: 4876: 14)I / flutter (722): # 29 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter (722): # 30 Element.updateChild (пакет: flutter / src / widgets /framework.dart: 2764: 12) I / flutter (722): # 31 SingleChildRenderObjectElement.mount (пакет: flutter / src / widgets / framework.dart: 4876: 14) I / flutter (722): # 32 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter (722): # 33 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722)): # 34 SingleChildRenderObjectElement.mount (пакет: flutter / src / widgets / framework.dart: 4876: 14) I / flutter (722): # 35 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter (722): # 36 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722): # 37 SingleChildRenderObjectElement.mount (пакет: flutter / src/widgets/framework.dart:4876:14) I / flutter (722): # 38 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart:2961: 14) I / flutter (722): # 39 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722): # 40 ComponentElement.performRebuild (пакет: flutter /src / widgets / framework.dart: 3750: 16) I / flutter (722): # 41 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5) I / flutter (722): # 42ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5) I / flutter (722): # 43 StatefulElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3864: 11) I/ flutter (722): # 44 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5) I / flutter (722): # 45 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14)I / flutter (722): # 46 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12)
I / flutter (722): # 47 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16)
I / flutter (722): # 48 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5)
I / flutter (722): # 49 ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5)
I / flutter (722): # 50 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5)
I / flutter (722): # 51 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14)
I / flutter (722): # 52 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12)
I / flutter (722): # 53 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16)
I / flutter (722): # 54 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5)
I / flutter (722): # 55 ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5)
I / flutter (722): # 56 StatefulElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3864: 11)
I / flutter (722): # 57 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5)
I / flutter (722): # 58 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14)
I / flutter (722): # 59 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12)
I / flutter (722): # 60 SingleChildRenderObjectElement.mount (пакет: flutter / src / widgets / framework.dart: 4876: 14)
I / flutter (722): # 61 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14)
I / flutter (722): # 62 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12)
I / flutter (722): # 63 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16)
I / flutter (722): # 64 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5)
I / flutter (722): # 65 ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5)
I / flutter (722): # 66 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5)
I / flutter (722): # 67 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14)
I / flutter (722): # 68 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12)
I / flutter (722): # 69 SingleChildRenderObjectElement.mount (пакет: flutter / src / widgets / framework.dart: 4876: 14)
I / flutter (722): # 70 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14)
I / flutter (722): # 71 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12)
I / flutter (722): # 72 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16)
I / flutter (722): # 73 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5)
I / flutter (722): # 74 ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5)
I / flutter (722): # 75 StatefulElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3864: 11)
I / flutter (722): # 76 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5)
I / flutter (722): # 77 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14)
I / flutter (722): # 78 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12)
I / flutter (722): # 79 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16)
I / flutter (722): # 80 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5)
I / flutter (722): # 81 ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5)
I / flutter (722): # 82 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5)I / flutter (722): # 83 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter (722): # 84 Element.updateChild (пакет: flutter / src / widgets /framework.dart: 2764: 12) I / flutter (722): # 85 SingleChildRenderObjectElement.mount (пакет: flutter / src / widgets / framework.dart: 4876: 14) I / flutter (722): # 86 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter (722): # 87 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722)): # 88 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16) I / flutter (722): # 89 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5) I / flutter (722): # 90 ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5) I / flutter (722): # 91 ComponentElement.mount (пакет: flutter / src/widgets/framework.dart:3717:5) I / flutter (722): # 92 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter(722): # 93 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722): # 94 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16) I / flutter (722): # 95 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5) I / flutter (722): # 96 ComponentElement._firstBuild (пакет: flutter/src/widgets/framework.dart:3722:5) I / flutter (722): # 97 StatefulElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3864: 11) I / flutter (722): #98 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5) I / flutter (722): # 99 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14)I / flutter (722): # 100 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722): # 101 ComponentElement.performRebuild (пакет: flutter / src / widgets /framework.dart: 3750: 16) I / флаттер (722): # 102 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5) I / флаттер (722): # 103ComponentElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3722: 5) I / flutter (722): # 104 StatefulElement._firstBuild (пакет: flutter / src / widgets / framework.dart: 3864: 11) I/ flutter (722): # 105 ComponentElement.mount (пакет: flutter / src / widgets / framework.dart: 3717: 5) I / flutter (722): # 106 Element.inflateWidget (пакет: flutter / src / widgets / framework.dart: 2961: 14) I / flutter (722): # 107 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2764: 12) I / flutter (722): # 108 RenderObjectElement.updateChildren (пакет: flutter / src / widgets / framework.dart: 4659: 32) I / flutter (722): # 109 MultiChildRenderObjectElement.update (пакет: flutter / src / widgets / framework.dart: 4992: 17) I / flutter (722): # 110 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2753: 15) I / flutter (722): # 111 _TheatreElement.update (пакет: flutter / src / widgets / overlay.dart: 607:16) I / flutter (722): # 112 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2753: 15) I / flutter (722): # 113 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16) I / flutter (722): # 114 Element.rebuild (пакет: flutter / src / widgets / framework.dart:3565: 5) I / flutter (722): # 115 StatefulElement.update (пакет: flutter / src / widgets / framework.dart: 3894: 5) I / flutter (722): # 116 Element.updateChild (пакет: flutter /src / widgets / framework.dart: 2753: 15) I / flutter (722): # 117 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16) I / flutter (722): # 118Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5) I / flutter (722): # 119 ProxyElement.update (пакет: flutter / src / widgets / framework.dart: 4006: 5)I / flutter (722): # 120 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2753: 15)
I / flutter (722): # 121 SingleChildRenderObjectElement.update (пакет: flutter / src / widgets / framework.dart: 4883: 14)
I / flutter (722): # 122 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2753: 15)
I / flutter (722): # 123 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16)
I / flutter (722): # 124 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5)
I / flutter (722): # 125 StatefulElement.update (пакет: flutter / src / widgets / framework.dart: 3894: 5)
I / flutter (722): # 126 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2753: 15)
I / flutter (722): # 127 SingleChildRenderObjectElement.update (пакет: flutter / src / widgets / framework.dart: 4883: 14)
I / flutter (722): # 128 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2753: 15)
I / flutter (722): # 129 SingleChildRenderObjectElement.update (пакет: flutter / src / widgets / framework.dart: 4883: 14)
I / flutter (722): # 130 Element.updateChild (пакет: flutter / src / widgets / framework.dart: 2753: 15)
I / flutter (722): # 131 ComponentElement.performRebuild (пакет: flutter / src / widgets / framework.dart: 3750: 16)
I / flutter (722): # 132 Element.rebuild (пакет: flutter / src / widgets / framework.dart: 3565: 5)
I / flutter (722): # 133 BuildOwner.buildScope (пакет: flutter / src / widgets / framework.dart: 2278: 33)
I / flutter (722): # 134 _WidgetsFlutterBinding & BindingBase & GestureBinding & ServicesBinding & SchedulerBinding & PaintingBinding & SemanticsBinding & RendererBinding & WidgetsBinding.drawFrame (пакет: flutter / src / widgets / binding.dart: 700: 20)
I / flutter (722): # 135 _WidgetsFlutterBinding & BindingBase & GestureBinding & ServicesBinding & SchedulerBinding & PaintingBinding & SemanticsBinding & RendererBinding._handlePersistentFrameCallback (пакет: flutter / src / render / binding.dart: 286: 5)
I / flutter (722): # 136 _WidgetsFlutterBinding & BindingBase & GestureBinding & ServicesBinding & SchedulerBinding._invokeFrameCallback (пакет: flutter / src / scheduler / binding.dart: 1012: 15)
I / flutter (722): # 137 _WidgetsFlutterBinding & BindingBase & GestureBinding & ServicesBinding & SchedulerBinding.handleDrawFrame (пакет: flutter / src / scheduler / binding.dart: 952: 9)
I / flutter (722): # 138 _WidgetsFlutterBinding & BindingBase & GestureBinding & ServicesBinding & SchedulerBinding._handleDrawFrame (пакет: flutter / src / scheduler / binding.dart: 864: 5)
I / flutter (722): # 142 _invoke (дротик: ui / hooks.dart: 219: 10)
I / flutter (722): # 143 _drawFrame (dart: ui / hooks.dart: 178: 3)
I / flutter (722): (исключены 3 кадра из пакета dart: async)
I / трепетание (722): ═══════════════════════════════════════════ ══════════════════════════════════════════════════ ═══════
I / flutter (722): было сгенерировано еще одно исключение: NoSuchMethodError: Получатель «status» был вызван с нулевым значением.
I / flutter (722): было сгенерировано еще одно исключение: NoSuchMethodError: Метод 'drive' был вызван с нулевым значением.