size static method

Widget size(
  1. AnimationController controller,
  2. Widget child, {
  3. Axis axis = Axis.vertical,
  4. Curve curve = Curves.easeInOut,
  5. double axisAlignment = 0.0,
  6. double? fixedCrossAxisSizeFactor,
})

A transition that animates the size of the child.

Implementation

static Widget size(
  AnimationController controller,
  Widget child, {
  Axis axis = Axis.vertical,
  Curve curve = Curves.easeInOut,
  double axisAlignment = 0.0,
  double? fixedCrossAxisSizeFactor,
}) {
  return SizeTransition(
    sizeFactor: CurvedAnimation(parent: controller, curve: curve),
    axis: axis,
    // SizeTransition.axisAlignment is deprecated in favour of the
    // two-dimensional `alignment`. This is the translation Flutter documents
    // for it, so the public `axisAlignment` argument keeps working.
    alignment: switch (axis) {
      Axis.horizontal => AlignmentDirectional(axisAlignment, -1),
      Axis.vertical => AlignmentDirectional(-1, axisAlignment),
    },
    fixedCrossAxisSizeFactor: fixedCrossAxisSizeFactor,
    child: child,
  );
}