'issue with Getx navigation
In terminal get this error message
**The following _CastError was thrown while handling a gesture: Null check operator used on a null value
When the exception was thrown, this was the stack: #0 PageRedirect.page (package:get/get_navigation/src/routes/route_middleware.dart:199:50) #1 GetMaterialApp.generator (package:get/get_navigation/src/root/get_material_app.dart:337:73) #2 _WidgetsAppState._onGenerateRoute (package:flutter/src/widgets/app.dart:1371:37) #3 NavigatorState._routeNamed (package:flutter/src/widgets/navigator.dart:3998:46) #4 NavigatorState.pushNamed (package:flutter/src/widgets/navigator.dart:4055:20) #5 GetNavigation.toNamed (package:get/get_navigation/src/extension_navigation.dart:595:37) #6 _HomeScreenState.build.. (package:task_react/screens/home_screen/home_screen.dart:38:21) #7 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:198:24) #8 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:608:11) #9 BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:296:5) #10 BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:267:7) #11 GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:157:27) #12 GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:443:20) #13 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:419:22) #14 RendererBinding.dispatchEvent (package:flutter/src/rendering/binding.dart:322:11) #15 GestureBinding._handlePointerEventImmediately (package:flutter/src/gestures/binding.dart:374:7) #16 GestureBinding.handlePointerEvent (package:flutter/src/gestures/binding.dart:338:5) #17 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:296:7) #18 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:279:7) #22 _invoke1 (dart:ui/hooks.dart:169:10) #23 PlatformDispatcher._dispatchPointerDataPacket (dart:ui/platform_dispatcher.dart:293:7) #24 _dispatchPointerDataPacket (dart:ui/hooks.dart:88:31) (elided 3 frames from dart:async)
Handler: "onTap" Recognizer: TapGestureRecognizer#4572b
**
while trying to navigate from one HomeScreen to BookDetailScreen. I am simply passing constant string as argument. I tried changing get: ^4.6.1 to get: 4.5.1 in pubsec.yaml file too. Still having same issue. Any help would be highly appreciated.
home_screen
class HomeScreen extends StatefulWidget {
static const route = "/home_screen";
const HomeScreen({ Key key }) : super(key: key);
@override
State<HomeScreen> createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.white54,
appBar: AppBar(title: const Text("ITBook"),),
body: SizedBox(
child: GridView.builder(
shrinkWrap: true,
gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2,mainAxisSpacing: 2, crossAxisSpacing: 2,
childAspectRatio: 1/1.4,),
scrollDirection: Axis.vertical,
itemCount: 10,
itemBuilder: (context, index) => InkWell(
onTap:(){
const String isbn = "testing";
Get.toNamed(DetailScreen.route,arguments: [isbn]);
},
child: Container(
color: Colors.white,
),
),
),
),
);
}
}
detail_screen simply displays the text for now
class DetailScreen extends StatefulWidget {
static const route = "/detail_screen";
final String isbn = Get.arguments[0];
@override
_DetailScreenState createState() => _DetailScreenState();
}
class _DetailScreenState extends State<DetailScreen> {
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Container(
child: Text(widget.isbn),
),
),
);
}
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
