Answers for "Navigator context flutter"

1

flutter not navigating to a new screen

Wrap the new screen with a Scaffold widget

//navigation page
return GestureDetector(
  onTap: () {
    Navigator.push(
    context,
    MaterialPageRoute(
    	builder: (context) => DestinationScreen()),
  );
}

// new screen page
class _DestinationScreenState extends State<DestinationScreen> {
  @override
  Widget build(BuildContext context) {
    return Scaffold();
  }
}
Posted by: Guest on June-12-2020
0

Navigator context flutter

final navigatorKey = GlobalKey<NavigatorState>();

void main() => runApp(
  MaterialApp(
    home: HomePage(),
    navigatorKey: navigatorKey, // Setting a global key for navigator
  ),
);

class HomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(),
      body: SafeArea(
        child: Center(
          child: Text('test')
        )
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: showMyDialog, // Calling the function without providing it BuildContext
      ),
    );
  }
}

void showMyDialog() {
  showDialog(
    context: navigatorKey.currentContext,
    builder: (context) => Center(
      child: Material(
        color: Colors.transparent,
        child: Text('Hello'),
      ),
    )
  );
}
Posted by: Guest on August-22-2021

Browse Popular Code Answers by Language