A Flutter package for some material design app intro screens
IntroViews-Flutter
IntroViews is inspired by Paper Onboarding and developed with love from scratch. I decided to rewrite almost all the features in order to make it available to the flutter developers and extensible as possible.
A Flutter package for some material design app intro screens with some cool animations.
Features
-
Easy addition of pages.
-
Circular page reveal.
-
Cool Animations.
-
Animation control, if the user stops sliding in the midway.
-
Skip button, for skipping the app intro.
-
Custom font selection.
-
Material Design.
Getting Started
You should ensure that you add the intro_views_flutter
as a dependency in your flutter project.
dependencies:
intro_views_flutter: '^2.4.0'
You can also reference the git repository directly if you want:
dependencies:
intro_views_flutter:
git: git://github.com/aagarwal1012/IntroViews-Flutter
You should then run flutter packages get
in your terminal so as to get the package.
Usage
-
IntroViewsFlutter
widget require alist
ofPageViewModel
, and some other parameters. Refer the code below to create a PageViewModel page.Final page = new PageViewModel( pageColor: const Color(0xFF607D8B), iconImageAssetPath: 'assets/taxi-driver.png', iconColor: null, bubbleBackgroundColor: null, body: Text( 'Easy cab booking at your doorstep with cashless payment system', ), title: Text('Cabs'), mainImage: Image.asset( 'assets/taxi.png', height: 285.0, width: 285.0, alignment: Alignment.center, ), textStyle: TextStyle(fontFamily: 'MyFont', color: Colors.white), );
-
Now refer the code below to get the
IntroViewsFlutter
widget.final Widget introViews = new IntroViewsFlutter( [page], onTapDoneButton: (){ //Void Callback }, showSkipButton: true, pageButtonTextStyles: new TextStyle( color: Colors.white, fontSize: 18.0, fontFamily: "Regular", ), );
For further usage refer the
example
available.For
Landscape
preview click the link.Note : If you added more than four pages in the list then there might be overlapping between
page icons
andskip button
, so my suggestion is just make theshowSkipButton: false
.
Documentation
PageViewModel Class
Dart attribute | Datatype | Description | Default Value |
---|---|---|---|
pageColor | Color | Set color of the page. | Null |
mainImage | Image / Widget | Set the main image of the page. | Null |
title | Text / Widget | Set the title text of the page. | Null |
body | Text / Widget | Set the body text of the page. | Null |
iconImageAssetPath | String | Set the icon image asset path that would be displayed in page bubble. | Null |
iconColor | Color | Set the page bubble icon color. | Null |
bubbleBackgroundColor | Color | Set the page bubble background color. | Colors.white / Color(0x88FFFFFF) |
textStyle | TextStyle | Set TextStyle for both title and body | title: color: Colors.white , fontSize: 50.0 body: color: Colors.white , fontSize: 24.0 |
bubble | Widget | Set a custom widget for the inner bubble | null |
IntroViewFlutter Class
Dart attribute | Datatype | Description | Default Value |
---|---|---|---|
pages | List | Set the pages of the intro screen. | Null |
onTapDoneButton | VoidCallback | Method executes on tapping done button. | Null |
showSkipButton | Bool | Show the skip button at the bottom of page. | true |
pageButtonTextSize | Double | Set the button text size. | 18.0 |
pageButtonFontFamily | String | Set the font of button text. | Default |
onTapSkipButton | VoidCallback | Method executes on tapping skip button. | null |
pageButtonTextStyles | TextStyle | Configure TextStyle for skip, done buttons, overrides pageButtonFontFamily, pageButtonsColor, pageButtonTextSize. | fontSize: 18.0 , color: Colors.white |
skipText | Text / Widget | Override Skip Button Text and styles. | Text('SKIP') |
doneText | Text / Widget | Override Done Button Text and styles. | Text('DONE') |
doneButtonPersist | Bool | Show done Button throughout pages | false |
columnMainAxisAlignment | MainAxisAlignment | Control [MainAxisAlignment] for column | MainAxisAlignment.spaceAround |
fullTransition | double | Adjust scroll distance for full transition | 300.0 |