Skip to content

chdo002/load_more

Repository files navigation

a CupertinoSliverRefreshControl like load more sliver

Features

  • support CustomerScrollView
  • support autoload and preload(only if cacheExtent > 0)
  • similar to CupertinoSliverRefreshControl useage
  • support horizontal scroll direction

Demo

online demo

Usage

late ValueNotifier<int> _count;
Future<void> loadMore() async {
  await Future.delayed(const Duration(seconds: 1));
  _count.value = _count.value + 8;
}
CustomScrollView(slivers: [
  ValueListenableBuilder(
      valueListenable: _count,
      builder: (c, value, _) {
        return SliverList(
            ...
        ]));
      }),
  LoadMoreController(onLoad: loadMore),
]);

Additional information

CustomScrollView(
  cacheExtent: 500,
  slivers: [
    LoadMoreController(
      onLoad: loadMore,
      autoLoad: true,
    )
  ],
);

if the autoLoad argument be true:

  • onLoad will be called when viewport not filled
  • onLoad will be called when the LoadMoreController reach the cacheExtent of the viewport, cacheExtent can be modified to control the preloading timing

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published