Animate BrandLinearIndicator

Inex Code 2022-09-16 15:00:15 +03:00
parent 641e329725
commit 6f6df30767
1 changed files with 23 additions and 15 deletions

View File

@ -15,21 +15,29 @@ class BrandLinearIndicator extends StatelessWidget {
final double height;
@override
Widget build(final BuildContext context) => Container(
height: height,
width: double.infinity,
clipBehavior: Clip.antiAlias,
decoration: BoxDecoration(
color: backgroundColor,
borderRadius: BorderRadius.circular(height),
),
alignment: Alignment.centerLeft,
child: FractionallySizedBox(
widthFactor: value,
child: Container(
decoration: BoxDecoration(
color: color,
borderRadius: BorderRadius.circular(height),
Widget build(final BuildContext context) => LayoutBuilder(
builder: (final context, final constraints) => Container(
height: height,
width: constraints.maxWidth,
clipBehavior: Clip.antiAlias,
decoration: BoxDecoration(
color: backgroundColor,
borderRadius: BorderRadius.circular(height),
),
alignment: Alignment.centerLeft,
child: AnimatedSlide(
duration: const Duration(milliseconds: 400),
curve: Curves.easeInOut,
offset: Offset(
-(1 - value),
0,
),
child: Container(
width: constraints.maxWidth,
decoration: BoxDecoration(
color: color,
borderRadius: BorderRadius.circular(height),
),
),
),
),