pubspec.yaml - 패키지추가
provider: ^4.3.2
lib\screen 폴더생성
lib\screen\firstpage.dart 페이지 생성
import 'package:flutter/material.dart';
class FirstPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('AppTitle-page1'),
),
body: Center(
child: Text('첫번째 페이지 나와'),
),
);
}
}
lib\screen\second.dart 페이지 생성
import 'package:flutter/material.dart';
class SecondPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('AppTitle-page2'),
),
body: Center(
child: Text('두번째페이지'),
),
);
}
}
main.dart
import 'package:flutter/material.dart';
import 'package:myproject_001/screen/firstpage.dart';
import 'package:myproject_001/screen/second.dart';
import 'package:provider/provider.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Provider<String>.value(
value: 'share data',
child: MaterialApp(
title: 'flutter demo app',
initialRoute: '/page2',
routes: {
'/page1': (context) => FirstPage(),
'/page2': (context) => SecondPage(),
},
),
);
}
}
routes
* main.dart
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
visualDensity: VisualDensity.adaptivePlatformDensity,
),
initialRoute: '/',
routes: {
'/': (context) => DatabaseApp(),
'/add': (context) => AddTodoApp(넘겨줄값),
},
);
}
...
floatingActionButton: Column(
mainAxisAlignment: MainAxisAlignment.end,
children: [
FloatingActionButton(
child: Icon(Icons.arrow_forward),
onPressed: () {
Navigator.of(context).pushNamed('/add');
},
),
'코딩(개발) > Flutter' 카테고리의 다른 글
AlertDialog (0) | 2021.02.04 |
---|---|
탭 컨트롤러 (0) | 2021.02.04 |
앱 화면 기본 구성 (0) | 2021.02.03 |
플러터 위젯 (0) | 2021.01.23 |
플러터설치 하려고 하니 에러가... 해결방법모음 (0) | 2021.01.18 |
댓글