LottieBuilder class
A widget that displays a Lottie animation.
Several constructors are provided for the various ways that a Lottie file can be provided:
- Lottie, for obtaining a composition from a LottieProvider.
- Lottie.asset, for obtaining a Lottie file from an AssetBundle using a key.
- Lottie.network, for obtaining a lottie file from a URL.
- Lottie.file, for obtaining a lottie file from a File.
- Lottie.memory, for obtaining a lottie file from a Uint8List.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- LottieBuilder
- Available extensions
Constructors
-
LottieBuilder({Key? key, required LottieProvider lottie, Animation<
double> ? controller, FrameRate? frameRate, bool? animate, bool? reverse, bool? repeat, LottieDelegates? delegates, LottieOptions? options, void onLoaded(LottieComposition)?, LottieFrameBuilder? frameBuilder, ImageErrorWidgetBuilder? errorBuilder, double? width, double? height, BoxFit? fit, AlignmentGeometry? alignment, bool? addRepaintBoundary, FilterQuality? filterQuality, WarningCallback? onWarning, RenderCache? renderCache}) -
const
-
LottieBuilder.asset(String name, {Animation<
double> ? controller, FrameRate? frameRate, bool? animate, bool? reverse, bool? repeat, LottieDelegates? delegates, LottieOptions? options, LottieImageProviderFactory? imageProviderFactory, void onLoaded(LottieComposition)?, Key? key, AssetBundle? bundle, LottieFrameBuilder? frameBuilder, ImageErrorWidgetBuilder? errorBuilder, double? width, double? height, BoxFit? fit, AlignmentGeometry? alignment, String? package, bool? addRepaintBoundary, FilterQuality? filterQuality, WarningCallback? onWarning, LottieDecoder? decoder, RenderCache? renderCache, bool? backgroundLoading}) - Creates a widget that displays an LottieComposition obtained from an AssetBundle.
-
LottieBuilder.file(Object file, {Animation<
double> ? controller, FrameRate? frameRate, bool? animate, bool? reverse, bool? repeat, LottieDelegates? delegates, LottieOptions? options, LottieImageProviderFactory? imageProviderFactory, void onLoaded(LottieComposition)?, Key? key, LottieFrameBuilder? frameBuilder, ImageErrorWidgetBuilder? errorBuilder, double? width, double? height, BoxFit? fit, AlignmentGeometry? alignment, bool? addRepaintBoundary, FilterQuality? filterQuality, WarningCallback? onWarning, LottieDecoder? decoder, RenderCache? renderCache, bool? backgroundLoading}) - Creates a widget that displays an LottieComposition obtained from a File.
-
LottieBuilder.memory(Uint8List bytes, {Animation<
double> ? controller, FrameRate? frameRate, bool? animate, bool? reverse, bool? repeat, LottieDelegates? delegates, LottieOptions? options, LottieImageProviderFactory? imageProviderFactory, void onLoaded(LottieComposition)?, ImageErrorWidgetBuilder? errorBuilder, Key? key, LottieFrameBuilder? frameBuilder, double? width, double? height, BoxFit? fit, AlignmentGeometry? alignment, bool? addRepaintBoundary, FilterQuality? filterQuality, WarningCallback? onWarning, LottieDecoder? decoder, RenderCache? renderCache, bool? backgroundLoading}) - Creates a widget that displays an LottieComposition obtained from a Uint8List.
-
LottieBuilder.network(String src, {Client? client, Map<
String, String> ? headers, Animation<double> ? controller, FrameRate? frameRate, bool? animate, bool? reverse, bool? repeat, LottieDelegates? delegates, LottieOptions? options, LottieImageProviderFactory? imageProviderFactory, void onLoaded(LottieComposition)?, Key? key, LottieFrameBuilder? frameBuilder, ImageErrorWidgetBuilder? errorBuilder, double? width, double? height, BoxFit? fit, AlignmentGeometry? alignment, bool? addRepaintBoundary, FilterQuality? filterQuality, WarningCallback? onWarning, LottieDecoder? decoder, RenderCache? renderCache, bool? backgroundLoading}) - Creates a widget that displays an LottieComposition obtained from the network.
Properties
- addRepaintBoundary → bool?
-
Indicate to automatically add a
RepaintBoundarywidget around the animation. This allows to optimize the app performance by isolating the animation in its ownLayer.final - alignBottomCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the bottom center of its parent.no setter - alignBottomEnd → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the bottom end corner of its parent.no setter - alignBottomStart → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the bottom start corner of its parent.no setter - alignCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the center of its parent.no setter - alignEndCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the start center of its parent.no setter - alignment → AlignmentGeometry?
-
How to align the animation within its bounds.
final
- alignStartCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the start center of its parent.no setter - alignTopCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the top center of its parent.no setter - alignTopEnd → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the top end corner of its parent.no setter - alignTopStart → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the top start corner of its parent.no setter - animate → bool?
-
If no controller is specified, this value indicate whether or not the
Lottie animation should be played automatically (default to true).
If there is an animation controller specified, this property has no effect.
final
- center → Widget
-
Available on Widget, provided by the CenterExtension extension
Wraps the widget with a Center widget.no setter -
controller
→ Animation<
double> ? -
The animation controller of the Lottie animation.
The animated value will be mapped to the
progressproperty of the Lottie animation.final - delegates → LottieDelegates?
-
A group of options to further customize the lottie animation.
final
- errorBuilder → ImageErrorWidgetBuilder?
-
A builder function that is called if an error occurs during loading.
final
- filterQuality → FilterQuality?
-
The quality of the image layer. See FilterQuality
FilterQuality.high is highest quality but slowest.
final
- fit → BoxFit?
-
How to inscribe the animation into the space allocated during layout.
final
- frameBuilder → LottieFrameBuilder?
-
A builder function responsible for creating the widget that represents
this lottie animation.
final
- frameRate → FrameRate?
-
The number of frames per second to render.
Use
FrameRate.compositionto use the original frame rate of the Lottie composition (default) UseFrameRate.maxto advance the animation progression at every frame.final - hashCode → int
-
The hash code for this object.
no setterinherited
- height → double?
-
If non-null, require the lottie animation to have this height.
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- lottie → LottieProvider
-
The lottie animation to load.
Example of providers: AssetLottie, NetworkLottie, FileLottie, MemoryLottie
final
- ltr → Widget
-
Available on Widget, provided by the DirectionalityExtension extension
Wraps the current widget in a Directionality widget with TextDirection.ltr.no setter - onLoaded → void Function(LottieComposition)?
-
A callback called when the LottieComposition has been loaded.
You can use this callback to set the correct duration on the AnimationController
with
composition.durationfinal - onWarning → WarningCallback?
-
A callback called when there is a warning during the loading or painting
of the animation.
final
- options → LottieOptions?
-
Some options to enable/disable some feature of Lottie
final
- renderCache → RenderCache?
-
Opt-in to a special render mode where the frames of the animation are
lazily rendered and kept in a cache.
Subsequent runs of the animation will be cheaper to render.
final
- repeat → bool?
-
Specify that the automatic animation should repeat in a loop (default to true).
The property has no effect if animate is false or controller is not null.
final
- reverse → bool?
-
Specify that the automatic animation should repeat in a loop in a "reverse"
mode (go from start to end and then continuously from end to start).
It default to false.
The property has no effect if animate is false, repeat is false or controller is not null.
final
- rtl → Widget
-
Available on Widget, provided by the DirectionalityExtension extension
Wraps the current widget in a Directionality widget with TextDirection.rtl.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- width → double?
-
If non-null, require the lottie animation to have this width.
final
Methods
-
alignedBox(
{double? width, double? height, AlignmentDirectional? alignment}) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with specified width, height, and alignment. -
animatedOpacity(
bool isVisible, {Duration duration = const Duration(milliseconds: 300)}) → AnimatedOpacity -
Available on Widget, provided by the VisibilityExtension extension
Wraps the widget with an AnimatedOpacity widget to animate its visibility. -
box(
{double? width, double? height}) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with both width and height. -
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< LottieBuilder> -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
override
-
expandBox(
) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox that fills the available space in both dimensions. -
expanded(
{int flex = 1}) → Widget -
Available on Widget, provided by the FlexExtensions extension
Wraps the current widget with anExpandedwidget, allowing it to expand and fill available space in a flex container (e.g.,Row,Column). -
flexible(
{int flex = 1, FlexFit fit = FlexFit.loose}) → Widget -
Available on Widget, provided by the FlexExtensions extension
Wraps the current widget with aFlexiblewidget, allowing it to take flexible space within a flex container, but with more control over its layout behavior. -
flexibleBox(
{required double width, double? height}) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with a flexible width and height. -
height(
double height) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with a specified height. -
hide(
bool isHidden) → Widget -
Available on Widget, provided by the VisibilityExtension extension
Conditionally hides the widget by replacing it with an empty widget (SizedBox.shrink). -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
paddedBox(
{double? width, double? height, EdgeInsets? padding}) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with padding around the child widget. -
paddingAll(
double value) → Widget -
Available on Widget, provided by the PaddingExtension extension
Wraps the widget with a Padding widget applying uniform padding on all sides. -
paddingOnly(
{double top = 0, double bottom = 0, double start = 0, double end = 0}) → Widget -
Available on Widget, provided by the PaddingExtension extension
Wraps the widget with a Padding widget using the specified EdgeInsets. -
paddingSymmetric(
{double vertical = 0, double horizontal = 0}) → Widget -
Available on Widget, provided by the PaddingExtension extension
Wraps the widget with a Padding widget applying symmetric padding. -
positioned(
{double? top, double? bottom, double? start, double? end, double? width, double? height}) → Widget -
Available on Widget, provided by the PositionedExtension extension
Wraps the widget with a PositionedDirectional widget. -
positionedDirectional(
{required TextDirection textDirection, double? top, double? bottom, double? start, double? end, double? width, double? height}) → Widget -
Available on Widget, provided by the PositionedExtension extension
Wraps the widget with a Positioned.directional widget. -
positionedFill(
{double? top, double? bottom, double? left, double? right}) → Widget -
Available on Widget, provided by the PositionedExtension extension
Wraps the widget with a Positioned.fill widget. -
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
-
visible(
bool isVisible) → Widget -
Available on Widget, provided by the VisibilityExtension extension
Wraps the widget with a Visibility widget to conditionally show or hide it. -
width(
double width) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with a specified width.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited