Instantly share code, notes, and snippets.
fayaz07/ProgressDialogNavDiffScreens.dart
Created Sep 13, 2019
import 'package:flutter/material.dart'; | |
import 'package:progress_dialog/progress_dialog.dart'; | |
ProgressDialog pr; | |
void main() { | |
runApp(MaterialApp( | |
home: FirstScreen(), | |
)); | |
} | |
class FirstScreen extends StatefulWidget { | |
@override | |
_FirstScreenState createState() => _FirstScreenState(); | |
} | |
class _FirstScreenState extends State<FirstScreen> { | |
ProgressDialog pr; | |
@override | |
Widget build(BuildContext context) { | |
pr = new ProgressDialog(context); | |
pr.style(message: 'Please wait...'); | |
return Scaffold( | |
body: Center( | |
child: RaisedButton( | |
child: Text('Show dialog and go to next screen', | |
style: TextStyle(color: Colors.white)), | |
color: Colors.blueAccent, | |
onPressed: () { | |
pr.show(); | |
Future.delayed(Duration(seconds: 3)).then((value) { | |
pr.hide().whenComplete(() { | |
Navigator.of(context).push(CupertinoPageRoute( | |
builder: (BuildContext context) => SecondScreen())); | |
}); | |
}); | |
}, | |
), | |
), | |
); | |
} | |
} | |
class SecondScreen extends StatefulWidget { | |
@override | |
_SecondScreenState createState() => _SecondScreenState(); | |
} | |
class _SecondScreenState extends State<SecondScreen> { | |
@override | |
Widget build(BuildContext context) { | |
return Scaffold( | |
body: Center(child: Text('I am second screen')), | |
); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment