wrapRefresher method

SmartRefresher wrapRefresher({
  1. required RefreshController controller,
  2. ScrollController? scrollController,
  3. dynamic refresh(
    1. RefreshController controller
    )?,
  4. dynamic loadmore(
    1. RefreshController controller
    )?,
})

Implementation

SmartRefresher wrapRefresher({
  required RefreshController controller,
ScrollController? scrollController,
  Function(RefreshController controller)? refresh,
  Function(RefreshController controller)? loadmore,
}) {

  RefreshController _controller = controller ;

  return SmartRefresher(
    controller: _controller,
    scrollController:scrollController ,
    enablePullDown: refresh != null,
    onRefresh: refresh == null
        ? null
        : () async {
            try {
              _controller.loadComplete();
              await refresh(_controller);
            } finally {
              _controller.refreshCompleted(resetFooterState: true);
            }
          },
    enablePullUp: loadmore != null,
    onLoading: loadmore == null
        ? null
        : () async {
            try {
              _controller.refreshCompleted();
              await loadmore(_controller,);
            } finally {
              _controller.loadComplete();
            }
          },
    child: this,
  );
}