bn_refresh_indicator 1.4.5

bn_refresh_indicator #

A system based refresh & load component.

Feature #

  • System based, no intrusion.
  • Support automatic refresh, manual control refresh.
  • Support no data display.

How To Use It . #

It's basically the same as the native RefreshIndicator.

          refreshController: refreshController, // Control refresh action
          autoRefresh: false,
          nodataWidget: Text('there is no data'),
          onRefresh: () async {
            await Future.delayed(Duration(seconds: 3));
            more = !more;
            _counter = 10;
            if (mounted) {
              setState(() {});
            return more;
          onLoadMore: () async {
            await Future.delayed(Duration(seconds: 3));
            _counter += 10;
            if (mounted) {
              setState(() {});
            return false;
          child: ListView.builder(
            // physics: BouncingScrollPhysics,
            itemBuilder: (context, index) {
              return GestureDetector(
                child: Card(
                  child: Center(
                    child: Text('index -- $index'),
                onTap: () {
                  Navigator.push(context, MaterialPageRoute(builder: (context) {
                    return MyHomePage(title: 'Second page');
            itemCount: _counter,
            itemExtent: 88.0,

Reference #


Extension #

It's very low intrusive, and if you don't need to load it just keep refresh, just Set onLoadMore to null or not assign it a value.

Planned #

Support for custom refresh animations.


  • add Initialization, add test unit.


  • Add official version.


  • fix readme. add example.


  • Handles logic for both refresh and load.


  • Handles logic for both refresh and load.fix readme.


  • Add drop - down to load data in case of no data handling.


  • Fixed a bug that did not show loading controls on android.


  • When you add a refresh, determine whether the data is loaded again.


  • Add refreshController and autoRefresh.


  • Fix bug.


  • Fix bug.


  • Fix bug.


  • Fix bug.


  • line 166 col 24: The method 'ErrorDescription' isn't defined for the class '_BnRefreshIndicatorState'.


test_bn_refreshindicator #

A new Flutter project.

Getting Started #

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  bn_refresh_indicator: ^1.4.5

2. Install it

You can install packages from the command line:

with Flutter:

$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:bn_refresh_indicator/bn_refresh_indicator.dart';
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

We analyzed this package on Feb 19, 2020, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.7.1
  • pana: 0.13.5
  • Flutter: 1.12.13+hotfix.7


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.1.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11 1.14.12
meta 1.1.8
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies