buildLoader method
Implementation
@override
Widget buildLoader(BuildContext context, AnimationController controller) {
return Row(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: List.generate(dotCount, (index) {
return AnimatedBuilder(
animation: controller,
builder: (_, __) {
double opacity = ((controller.value + index * 0.3) % 1.0);
double scale = scaleAnimation ? 0.5 + 0.5 * opacity : 1.0;
return Opacity(
opacity: opacity,
child: Transform.scale(
scale: scale,
child: Container(
width: size * dotSizeRatio,
height: size * dotSizeRatio,
margin: EdgeInsets.symmetric(horizontal: size * spacingRatio),
decoration: BoxDecoration(
color: color ?? Colors.blue,
shape: BoxShape.circle,
),
),
),
);
},
);
}),
);
}