SpriteButton.asset constructor

SpriteButton.asset({
  1. required String path,
  2. required String pressedPath,
  3. required VoidCallback onPressed,
  4. required double width,
  5. required double height,
  6. required Widget label,
  7. Images? images,
  8. Vector2? srcPosition,
  9. Vector2? srcSize,
  10. Vector2? pressedSrcPosition,
  11. Vector2? pressedSrcSize,
  12. WidgetBuilder? errorBuilder,
  13. WidgetBuilder? loadingBuilder,
  14. Key? key,
})

Loads the images from the asset path and pressedPath and renders it as a widget.

It will use the loadingBuilder while the image from path is loading. To render without loading, or when you want to have a gapless playback when the path value changes, consider loading the image beforehand and direct pass it to the default constructor.

Implementation

SpriteButton.asset({
  required String path,
  required String pressedPath,
  required this.onPressed,
  required this.width,
  required this.height,
  required this.label,
  Images? images,
  this.srcPosition,
  this.srcSize,
  this.pressedSrcPosition,
  this.pressedSrcSize,
  this.errorBuilder,
  this.loadingBuilder,
  super.key,
}) : _buttonsFuture = Future.wait([
        Sprite.load(
          path,
          srcSize: srcSize,
          srcPosition: srcPosition,
          images: images,
        ),
        Sprite.load(
          pressedPath,
          srcSize: pressedSrcSize,
          srcPosition: pressedSrcPosition,
          images: images,
        ),
      ]);