initOpacityAnimation method
initialize the opacity animation of current slice
Implementation
void initOpacityAnimation(OpacityAnimationConfig config) {
if (!config.enabled) {
opacityAnimation = ConstantTween<double>(1).animate(widget.controller);
return;
}
List<TweenSequenceItem<double>> sequenceItemList = [];
if (config.animationStartDelay > 0) {
sequenceItemList.add(
TweenSequenceItem(tween: Tween(
begin: 0,
end: 0
), weight: config.animationStartDelay),
);
}
sequenceItemList.add(
TweenSequenceItem(
tween: Tween(
begin: 0,
end: 1,
),
weight: 1 - config.animationFinishDelay - config.animationStartDelay
),
);
if (config.animationFinishDelay > 0) {
sequenceItemList.add(
TweenSequenceItem(
tween: ConstantTween(1),
weight: config.animationFinishDelay,
)
);
}
opacityAnimation = TweenSequence<double>(
sequenceItemList
).animate(
CurvedAnimation(
parent: widget.controller,
curve: config.curve
)
);
}