Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import 'dart:async';
- import 'package:flutter/material.dart';
- void main() {
- runApp(MaterialApp(
- title: 'Navigation Basics',
- home: FirstScreen(),
- ));
- }
- class FirstScreen extends StatefulWidget {
- @override
- State createState() => _FirstScreenState();
- }
- class _FirstScreenState extends State<FirstScreen> {
- Timer timer;
- int timerVal = 0;
- getData() {
- print('getData: ' + DateTime.now().toString());
- this.setState(() {
- timerVal++;
- });
- }
- @override
- void initState() {
- print('initState FirstScreen');
- super.initState();
- this.getData();
- timer = Timer.periodic(Duration(seconds: 2), (Timer t) => this.getData());
- }
- @override
- void dispose() {
- print('dispose FirstScreen');
- timer?.cancel();
- super.dispose();
- }
- @override
- Widget build(BuildContext context) {
- return Scaffold(
- body: Center(
- child: Column(
- mainAxisSize: MainAxisSize.min,
- children: <Widget>[
- Text('$timerVal', style: TextStyle(fontSize: 40.0),),
- RaisedButton(
- child: Text('Go to Second screen'),
- onPressed: () {
- Navigator.push(
- context,
- MaterialPageRoute(builder: (context) => SecondScreen()),
- );
- },
- ),
- ],
- ),
- ),
- );
- }
- }
- class SecondScreen extends StatelessWidget {
- @override
- Widget build(BuildContext context) {
- return Scaffold(
- body: Center(
- child: RaisedButton(
- onPressed: () {
- Navigator.push(
- context,
- MaterialPageRoute(builder: (context) => FirstScreen()),
- );
- },
- child: Text('Go to First screen!'),
- ),
- ),
- );
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement