Usage of the nice_intro
package.
import 'package:flutter/material.dart';
import 'package:nice_intro/intro_screen.dart';
import 'package:nice_intro/intro_screens.dart';
import 'package:tinycolor/tinycolor.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'intro screen demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(),
debugShowCheckedModeBanner: false,
);
}
}
class MyHomePage extends StatefulWidget {
@override
MyHomePageState createState() {
return MyHomePageState();
}
}
class MyHomePageState extends State<MyHomePage> with TickerProviderStateMixin {
@override
Widget build(BuildContext context) {
var screens = IntroScreens(
onDone: () => Navigator.of(context).push(
MaterialPageRoute(
builder: (context) => NextPage(),
),
),
onSkip: () => print('Skipping the intro slides'),
footerBgColor: TinyColor(Colors.blue).lighten().color,
activeDotColor: Colors.white,
footerRadius: 18.0,
// indicatorType: IndicatorType.CIRCLE,
slides: [
IntroScreen(
title: 'Search',
imageAsset: 'assets/img/1.png',
description: 'Quickly find all your messages',
headerBgColor: Colors.white,
),
IntroScreen(
title: 'Focused Inbox',
headerBgColor: Colors.white,
imageAsset: 'assets/img/2.png',
description: "We've put your most important, actionable emails here",
),
IntroScreen(
title: 'Social',
headerBgColor: Colors.white,
imageAsset: 'assets/img/3.png',
description: "Keep talking with your mates",
),
],
);
return Scaffold(
body: screens,
);
}
}
class NextPage extends StatefulWidget {
@override
_NextPageState createState() => _NextPageState();
}
class _NextPageState extends State<NextPage> {
@override
Widget build(BuildContext context) {
return Container(
color: Colors.white,
);
}
}