build method
Widget
build(
- BuildContext context, {
- Key? key,
- Widget? header,
- required List<
Widget> slivers, - ScrollController? controller,
- Future<
void> onRefresh()?, - required Clip clipBehavior,
- ScrollPhysics? physics,
- required bool reverse,
- ScrollBehavior? scrollBehavior,
- required bool shrinkWrap,
- Color? color,
- Color? refreshControlBackgroundColor,
- Color? refreshIndicatorBackgroundColor,
- EdgeInsets padding = EdgeInsets.zero,
override
Implementation
@override
Widget build(
BuildContext context, {
Key? key,
Widget? header,
required List<Widget> slivers,
ScrollController? controller,
Future<void> Function()? onRefresh,
required Clip clipBehavior,
ScrollPhysics? physics,
required bool reverse,
ScrollBehavior? scrollBehavior,
required bool shrinkWrap,
Color? color,
/// The color of the refresh section background. Only for iOS.
Color? refreshControlBackgroundColor,
/// The background color of the refresh indicator. Only for Android.
Color? refreshIndicatorBackgroundColor,
EdgeInsets padding = EdgeInsets.zero,
}) {
final scrollView = CustomScrollView(
key: key,
clipBehavior: clipBehavior,
controller: controller,
physics: physics,
reverse: reverse,
scrollBehavior: scrollBehavior,
shrinkWrap: shrinkWrap,
slivers: [
if (header != null) header,
SliverPadding(
padding: padding,
sliver: SliverMainAxisGroup(slivers: slivers),
),
],
);
if (onRefresh != null) {
return RefreshIndicator(
key: key,
onRefresh: onRefresh,
color: color,
backgroundColor: refreshIndicatorBackgroundColor,
displacement: MediaQuery.of(context).padding.top + 20,
child: scrollView,
);
}
return scrollView;
}