import
'package:flutter/material.dart'
;
import
'package:flutter_overboard/flutter_overboard.dart'
;
void
main() => runApp(MyApp());
class
MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return
MaterialApp(
title:
'Flutter Onboarding Screen Demo'
,
debugShowCheckedModeBanner:
false
,
theme: ThemeData(
primarySwatch: Colors.green,
),
home: MyHomePage(title:
'Flutter Onboarding Screen'
),
);
}
}
class
MyHomePage extends StatefulWidget {
MyHomePage({Key? key, required
this
.title}) : super(key: key);
final String title;
@override
_MyHomePageState createState() => _MyHomePageState();
}
class
_MyHomePageState extends State<MyHomePage> with TickerProviderStateMixin {
final GlobalKey<ScaffoldState> _globalKey = GlobalKey<ScaffoldState>();
@override
Widget build(BuildContext context) {
return
Scaffold(
key: _globalKey,
body: OverBoard(
allowScroll:
true
,
pages: pages,
showBullets:
true
,
inactiveBulletColor: Colors.green,
skipCallback: () {
ScaffoldMessenger.of(context).showSnackBar(SnackBar(
content: Text(
"Skip clicked"
),
));
},
finishCallback: () {
Navigator.pushReplacement(
context,
MaterialPageRoute(
builder: (context) =>
HomeScreen(),
),
);
},
),
);
}
final pages = [
PageModel(
color: Color.fromARGB(255, 243, 154, 21),
imageAssetPath:
'assets/1.png'
,
title:
'Page Model 1'
,
body:
'Learn Flutter'
,
doAnimateImage:
true
),
PageModel(
color: Color.fromARGB(255, 64, 214, 22),
imageAssetPath:
'assets/2.jpg'
,
title:
'Page Model 2'
,
body:
'Learn Java'
,
doAnimateImage:
true
),
PageModel(
color: Color.fromARGB(255, 202, 236, 12),
imageAssetPath:
'assets/3.png'
,
title:
'Page Model 3'
,
body:
'Learn Python'
,
doAnimateImage:
true
),
PageModel.withChild(
child: Padding(
padding: EdgeInsets.only(bottom: 25.0),
child: Image.asset(
'assets/1.png'
, width: 300.0, height: 300.0),
),
color:
const
Color(0xFF5886d6),
doAnimateChild:
true
)
];
}
class
HomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return
Scaffold(
appBar: AppBar(
title: Text(
'Home Screen'
),
),
body: Center(
child: Text(
'Welcome to the Home Screen! Geeks Premier League 2023'
),
),
);
}
}