flutter之列表上拉下拉刷新

1、使用第三方包flutter_refresh

2、在有状态控件里面导入

import 'package:flutter_refresh/flutter_refresh.dart';

3、定义私有变量

int _itemCount;

4、自定义Wiget

Widget getRefreshList() {
    return new SafeArea(
        child: new Refresh(
      onFooterRefresh: onFooterRefresh,
      onHeaderRefresh: onHeaderRefresh,
      child: new ListView.builder(
        itemBuilder: (context, index) {
          return new Padding(
            key: new Key(index.toString()),
            padding: new EdgeInsets.all(10.0),
            child: new Text(
              "item:" + (index + 1).toString(),
              style: new TextStyle(fontSize: 14.0),
            ),
          );
        },
        itemCount: _itemCount,
      ),
    ));
  }

5、使用Future模拟延迟加载

//下拉
 Future<Null> onFooterRefresh() {
    return new Future.delayed(new Duration(seconds: 2), () {
      setState(() {
        _itemCount += 10;
      });
    });
  }
//下拉
  Future<Null> onHeaderRefresh() {
    return new Future.delayed(new Duration(seconds: 2), () {
      setState(() {
        _itemCount = 10;
      });
    });
  }

猜你喜欢

转载自blog.csdn.net/qq_29407683/article/details/88666201