introduction_slider 2.0.1

SDKflutter
Platformandroidioswindowslinuxmacosweb

Introduction/Onboarding slider package for flutter application with several features.

introduction-slider

chouhan-rahul buymeacoffee ko-fi paypal

Become a sponsor

sponsor

Introduction Slider

An introduction slider has some screens that can use to describe your application. You can describe your application's title, description, logo, etc. It comes with several features.

Here is an example of how to implement IntroductionSlider in a Flutter application.

IntroductionSlider(
  items: [
    IntroductionSliderItem(
      logo: FlutterLogo(),
      title: Text("Title 1"),
      backgroundColor: Colors.red,
    ),
    IntroductionSliderItem(
      logo: FlutterLogo(),
      title: Text("Title 2"),
      backgroundColor: Colors.green,
    ),
    IntroductionSliderItem(
      logo: FlutterLogo(),
      title: Text("Title 3"),
      backgroundColor: Colors.blue,
    ),
  ],
  done: Done(
    child: Icon(Icons.done),
    home: HomePage(),
  ),
  next: Next(child: Icon(Icons.arrow_forward)),
  back: Back(child: Icon(Icons.arrow_back)),
  dotIndicator: DotIndicator(),
)

IntroductionSlider Properties

PropertyTypeDescription
items:List<IntroductionSliderItem>Defines the appearance of the introduction slider items that are arrayed within the introduction slider.
done:DoneThe Done that is used to navigate to the target page.
back:BackThe Back that is used to navigate to the previous page.
next:NextThe Next that is used to navigate to the next page.
initialPage:intThe initial page index of the introduction slider.
doIndicator:DotIndicatorThe DotIndicator that is used to indicate dots.
physics:ScrollPhysicsDetermines the physics of a [Scrollable] widget.
scrollDirection:AxisThe two cardinal directions in two dimensions.
showStatusBar:boolShow and hide app status/navigation bar on the introduction slider.

IntroductionSliderItem

It is used to describe the title, subtitle, logo, etc. of the introduction slider.

Here is an example of how to implement IntroductionSliderItem with background color.

introduction_slider

IntroductionSliderItem(
  logo: FlutterLogo(),
  title: Text("Introduction Slider Title"),
  subtitle: Text("Introduction Slider Subtitle"),
  backgroundColor: Colors.red
)

Here is an example of how to implement IntroductionSliderItem with gradient background.

introduction_slider

IntroductionSliderItem(
  logo: FlutterLogo(),
  title: Text("Introduction Slider Title"),
  subtitle: Text("Introduction Slider Subtitle"),
  gradient: LinearGradient(
    colors: [
      Colors.cyan,
      Colors.indigo,
    ],
  ),
)

Here is an example of how to implement IntroductionSliderItem with background image.

introduction_slider

IntroductionSliderItem(
  logo: FlutterLogo(),
  title: Text("Introduction Slider Title"),
  subtitle: Text("Introduction Slider Subtitle"),
  backgroundImageDecoration: BackgroundImageDecoration(
    image: AssetImage("assets/images/larry_page.jpg"),
    colorFilter: ColorFilter.mode(
      Colors.black.withOpacity(0.6),
      BlendMode.darken,
    ),
    fit: BoxFit.cover,
    opacity: 1.0,
  ),
)

IntroductionSliderItem Properties

PropertyTypeDescription
logo:WidgetLogo of the introduction slider.
title:WidgetTitle of the introduction slider.
subtitle:WidgetSubtitle of the introduction slider.
backgroundColor:ColorBackground color of the introduction slider.
backgroundImageDecoration:BackgroundImageDecorationBackground image of the introduction slider.
gradient:GradientGradient background of the introduction slider.

Properties of BackgroundImageDecoration

PropertyTypeDescription
image:ImageProviderTypically this will be an AssetImage or a NetworkImage
fit:BoxFitFill the target box by distorting the source's aspect ratio.
colorFilter:ColorFilterA color filter is a function that takes two colors, and outputs one color.
opacity:doubleUsed to set the filterQuality of the image.

Scroll / Gesture control

A page can be scrolled horizontally or vertically. The default scroll direction is horizontal. You can change the scroll direction by setting the scrollDirection property.

introdution slider

IntroductionSlider(
  scrollDirection: Axis.vertical,
)

You can also control the introduction slider by gestures. You can set the physics property to NeverScrollableScrollPhysics() to disable the gesture slide.

IntroductionSlider(
  physics: NeverScrollableScrollPhysics(),
)

DotIndicator

The dot indicator is used to indicate the current page. You can change the color of the dot indicator and the size of the dot indicator.

DotIndicator(
  selectedColor: Colors.blue,
  unselectedColor: Colors.blue.withOpacity(0.5),
  size: 8.0
)

DotIndicator Properties

PropertyTypeDescription
selectedColor:ColorThe selected color of the dot.
unselectedColor:ColorThe unselected color of the dot.
size:doubleThe size of the dot.

Done

Done has some more properties which are used to redirect to the target page with an animation effect. animationDuration is used to set the duration of the animation and curve is used to set the animation curve.

Done(
  child: Icon(Icons.done),
  curve: Curves.easeInOut,
  animationDuration: Duration(milliseconds: 350),
  home: HomePage(),
)

Done Properties

PropertyTypeDescription
child:WidgetDone button's child widget.
home:WidgetRedirects to the target page.
style:ButtonStyleMany of the ButtonStyle properties are [MaterialStateProperty] objects which resolve to different values depending on the button's state.
curve:CurveA collection of common animation easing curves.
animationDuration:DurationThe animation lasts for the given duration and follows the given curve. The returned [Future] resolves when the animation completes.

Next

Next has some more properties which are used to redirect to the next slide page with an animation effect. animationDuration is used to set the duration of the animation and curve is used to set the animation curve.

Next(
  child: Icon(Icons.done),
  curve: Curves.easeInOut,
  animationDuration: Duration(milliseconds: 350),
)

Next Properties

PropertyTypeDescription
child:WidgetNext button's child widget.
style:ButtonStyleMany of the ButtonStyle properties are [MaterialStateProperty] objects which resolve to different values depending on the button's state.
curve:CurveA collection of common animation easing curves.
animationDuration:DurationThe animation lasts for the given duration and follows the given curve. The returned [Future] resolves when the animation completes.

Back

Back has some more properties which are used to redirect to the previous slide page with an animation effect. animationDuration is used to set the duration of the animation and curve is used to set the animation curve.

Back(
  child: Icon(Icons.done),
  curve: Curves.easeInOut,
  animationDuration: Duration(milliseconds: 350),
)

Back Properties

PropertyTypeDescription
child:WidgetNext button's child widget.
style:ButtonStyleMany of the ButtonStyle properties are [MaterialStateProperty] objects which resolve to different values depending on the button's state.
curve:CurveA collection of common animation easing curves.
animationDuration:DurationThe animation lasts for the given duration and follows the given curve. The returned [Future] resolves when the animation completes.

Hide/Show status bar and navigation bar

By default showStatusBar is false. You can show status bar and navigation bar by setting showStatusBar to true.

IntroductionSlider(
  showStatusBar: true,
)

Report bugs or issues

You are welcome to open a ticket on github if any problems arise. New ideas are always welcome.

Copyright and License

Copyright © 2022 Rahul Chouhan. Licensed under the MIT LICENSE.

3d Illustration by Icons 8 from Ouch!