Performing hot reload...
Syncing files to device Android SDK built for x86...
Reloaded 1 of 419 libraries in 1,185ms.
I/flutter (16667): ══╡ EXCEPTION CAUGHT BY GESTURE ╞═══════════════════════════════════════════════════════════════════
I/flutter (16667): The following assertion was thrown while handling a gesture:
I/flutter (16667): Navigator operation requested with a context that does not include a Navigator.
I/flutter (16667): The context used to push or pop routes from the Navigator must be that of a widget that is a
I/flutter (16667): descendant of a Navigator widget.
I/flutter (16667):
I/flutter (16667): When the exception was thrown, this was the stack:
I/flutter (16667): #0 Navigator.of.<anonymous closure> (package:flutter/src/widgets/navigator.dart:1291:9)
I/flutter (16667): #1 Navigator.of (package:flutter/src/widgets/navigator.dart:1298:6)
I/flutter (16667): #2 _SampleAppState.build.<anonymous closure> (package:flutter_builder_question/main.dart:26:42)
I/flutter (16667): #3 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:507:14)
I/flutter (16667): #4 _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:562:30)
I/flutter (16667): #5 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:102:24)
I/flutter (16667): #6 TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:242:9)
I/flutter (16667): #7 TapGestureRecognizer.handlePrimaryPointer (package:flutter/src/gestures/tap.dart:175:7)
I/flutter (16667): #8 PrimaryPointerGestureRecognizer.handleEvent (package:flutter/src/gestures/recognizer.dart:315:9)
I/flutter (16667): #9 PointerRouter._dispatch (package:flutter/src/gestures/pointer_router.dart:73:12)
I/flutter (16667): #10 PointerRouter.route (package:flutter/src/gestures/pointer_router.dart:101:11)
I/flutter (16667): #11 _WidgetsFlutterBinding&BindingBase&GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:180:19)
I/flutter (16667): #12 _WidgetsFlutterBinding&BindingBase&GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:158:22)
I/flutter (16667): #13 _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:138:7)
I/flutter (16667): #14 _WidgetsFlutterBinding&BindingBase&GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:101:7)
I/flutter (16667): #15 _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:85:7)
I/flutter (16667): #16 _invoke1 (dart:ui/hooks.dart:168:13)
I/flutter (16667): #17 _dispatchPointerDataPacket (dart:ui/hooks.dart:122:5)
I/flutter (16667):
I/flutter (16667): Handler: onTap
I/flutter (16667): Recognizer:
I/flutter (16667): TapGestureRecognizer#048ad(debugOwner: GestureDetector, state: possible, won arena, finalPosition:
I/flutter (16667): Offset(379.0, 44.9), sent tap down)
I/flutter (16667): ════════════════════════════════════════════════════════════════════════════════════════════════════
import 'package:flutter/material.dart';
void main() {
runApp(SampleApp());
}
// This app is a stateful, it tracks the user's current choice.
class SampleApp extends StatefulWidget {
@override
_SampleAppState createState() => _SampleAppState();
}
class _SampleAppState extends State<SampleApp> {
@override
Widget build(BuildContext context) {
return MaterialApp(
routes: <String, WidgetBuilder>{
'/search': (BuildContext context) => new SearchScreen()
},
home: Scaffold(
appBar: AppBar(
title: const Text('AppBar Menu'),
actions: <Widget>[
IconButton(
icon: Icon(Icons.search),
onPressed: () => Navigator.of(context).pushNamed('/search'),
),
],
),
body: Center(
child: Text('Main Screen'),
),
),
);
}
}
//class _SampleAppState extends State<SampleApp> {
// @override
// Widget build(BuildContext context) {
// return MaterialApp(
// routes: <String, WidgetBuilder>{
// '/search': (BuildContext context) => new SearchScreen()
// },
// home: Builder(
// builder: (context) => Scaffold(
// appBar: AppBar(
// title: const Text('AppBar Menu'),
// actions: <Widget>[
// IconButton(
// icon: Icon(Icons.search),
// onPressed: () =>
// Navigator.of(context).pushNamed('/search'),
// ),
// ],
// ),
// body: Center (
// child: Text('Main Screen'),
// ),
// ),
// ));
// }
//}
class SearchScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Scaffold(
body: Center(
child: Text('Search Screen'),
),
);
}
}