HeaderFooter.card constructor

HeaderFooter.card({
  1. Widget? header,
  2. required Widget body,
  3. Widget? footer,
  4. double elevation = 20,
  5. Clip clipBehavior = Clip.antiAliasWithSaveLayer,
  6. ShapeBorder? shape,
  7. CrossAxisAlignment crossAxisAlignment = CrossAxisAlignment.stretch,
  8. MainAxisAlignment mainAxisAlignment = MainAxisAlignment.end,
  9. MainAxisSize mainAxisSize = MainAxisSize.min,
  10. bool expandBody = true,
})

Implementation

factory HeaderFooter.card({
  Widget? header,
  required Widget body,
  Widget? footer,
  double elevation = 20,
  Clip clipBehavior = Clip.antiAliasWithSaveLayer,
  ShapeBorder? shape,
  CrossAxisAlignment crossAxisAlignment = CrossAxisAlignment.stretch,
  MainAxisAlignment mainAxisAlignment = MainAxisAlignment.end,
  MainAxisSize mainAxisSize = MainAxisSize.min,
  bool expandBody = true,
}) {
  return HeaderFooter._(
    builder: (_) => Card(
      // key: GlobalKey(),
      elevation: elevation,
      clipBehavior: clipBehavior,
      shape: shape,
      child: Column(
        crossAxisAlignment: crossAxisAlignment,
        mainAxisAlignment: mainAxisAlignment,
        mainAxisSize: mainAxisSize,
        children: [
          if (header != null) header,
          expandBody ? Expanded(child: body) : body,
          if (footer != null) footer,
        ],
      ),
    ),
  );
  // return HeaderFooter._(
  //   builder:(_)=> Card(
  //   // key: GlobalKey(),
  //   elevation: elevation,
  //   clipBehavior: clipBehavior,
  //   shape: shape,
  //   child: Column(
  //     crossAxisAlignment: crossAxisAlignment,
  //     mainAxisAlignment: MainAxisAlignment.end,
  //     mainAxisSize: MainAxisSize.min,
  //     children: [
  //       if (header != null) header!,
  //       expandBody ? Expanded(child: body) : body,
  //       if (footer != null) footer!,
  //     ],
  //   ),
  // );
  // );
}