Lazy Loading Flutter Plugin

Lazy Loading Flutter Plugin

flutter_placeholder_textlines

A simple plugin to generate placeholder lines that emulates text in a UI, useful for displaying placeholder content while loading or empty items

Example of Usage

Widget _buildCustomColorSizePlaceholder() {
    return Container(
      width: 200,
      child: PlaceholderLines(
        count: 4,
        align: TextAlign.center,
        lineHeight: 8,
        color: Colors.blueAccent,
      ),
    );
  }

  Widget _buildSimpleTextPlaceholder(TextAlign align) {
    return Container(
      width: 300,
      child: PlaceholderLines(
        count: 3,
        align: align,
      ),
    );
  }

  Widget _buildSubtitle(String title) {
    return Container(
      padding: EdgeInsets.only(
        top: 24,
        bottom: 16,
      ),
      child: Text(
        title,
        style: TextStyle(fontSize: 20),
      ),
    );
  }

  _buildAnimated() {
    return Container(
      width: 300,
      child: PlaceholderLines(
        count: 3,
        animate: true,
        color: Colors.purple,
      ),
    );
  }

  _buildCardExample() {
    return Material(
      borderRadius: BorderRadius.circular(10),
      elevation: 9,
      child: Container(
        padding: EdgeInsets.symmetric(vertical: 16, horizontal: 20),
        width: 300,
        child: Row(
          children: [
            Container(
              margin: EdgeInsets.only(right: 16),
              width: 70,
              height: 70,
              decoration: BoxDecoration(color: Colors.grey.withOpacity(.6), ),
              child: Center(child: Icon(Icons.photo_size_select_actual, color: Colors.white, size: 38,),),
            ),
            Expanded(
              child: PlaceholderLines(
                count: 3,
              ),
            ),
          ],
        ),
      ),
    );
  }

API Options

  /// Defines how many lines to build
  final int count;

  /// Defines color to be used as base when building each line
  final Color color;

  /// Defines alignment for all the lines generated
  final TextAlign align;

  /// Defines the min value for the opacity that a line could have, since color opacity it's generated randomly ,
  /// this prevents the value from going to low (making it invisible)
  /// defaults to [0.4]
  final double minOpacity;

  /// Defines the max value for the opacity that a line could have, since color opacity it's generated randomly ,
  /// defaults to [0.94]
  final double maxOpacity;

  /// Defines the max width that a line could have, since width it's generated randomly
  /// defaults to [.95]
  final double maxWidth;

  /// Defines the min width that a line could have, since width it's generated randomly
  /// defaults to [.72]
  final double minWidth;

  /// Defines the line height
  /// defaults to [12]
  final double lineHeight;

  /// if [true], plays a nice animation of an overlay
  final bool animate;

  /// Use a [customAnimationOverlay] to display instead of the difault one
  final Widget customAnimationOverlay;

  /// Set a custom [animationOverlayColor]
  final Color animationOverlayColor;

  /// If [true] , this will cause the lines to be rebuild with different widths (randomly generated)
  /// every time any parent widget rebuilds it's state
  /// defaults to [false]
  final bool rebuildOnStateChange;

Also please see example at: https://github.com/victorevox/flutter_placeholder_textlines/tree/master/example

Screenshots

Lazy Loading Flutter Plugin Lazy Loading Flutter Plugin Lazy Loading Flutter Plugin

Getting Started

This project is a starting point for a Dart package, a library module containing code that can be shared easily across
multiple Flutter or Dart projects.

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Source Code

Please Visit Lazy Loading Flutter Plugin Source Code at GitHub