关于flutter第三方刷新pull_to_refresh: ^2.0.0 版本的使用
·
1.导入本地就不废话了 2.使用地方 import 'package:pull_to_refresh/pull_to_refresh.dart'; 3.具体使用,直接贴代码:
代码实例
class MyhelpVC extends StatefulWidget {
const MyhelpVC({Key? key}) : super(key: key);
@override
State<MyhelpVC> createState() => _MyhelpVCState();
}
class _MyhelpVCState extends State<MyhelpVC> {
RefreshController _refreshController =
RefreshController(initialRefresh: false);
void _onRefresh() async{
// monitor network fetch
await Future.delayed(Duration(milliseconds: 1000));
_refreshController.refreshCompleted();
_refreshController.loadComplete();
}
void _onLoading() async{
// monitor network fetch
await Future.delayed(Duration(milliseconds: 1000));
if(hasmoreData){
_refreshController.loadComplete();
}else{
_refreshController.loadNoData();
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
iconTheme: IconThemeData(
color: Colors.black, //修改颜色
),
backgroundColor: Colors.white,
title: Text("我的救援",style: TextStyle(color: Colors.black),),
elevation: 0,
),
body:
SmartRefresher(
enablePullDown: true,
enablePullUp: true,
header: ClassicHeader(//无特殊要求就可以用这个换下文案就行了
height: 45.0,
releaseText: '松开刷新',
refreshingText: '刷新中',
completeText: '刷新完成',
idleText: '下拉刷新',
),
footer:ClassicFooter(//无特殊要求就可以用这个换下文案就行了
loadStyle: LoadStyle.ShowWhenLoading,
completeDuration: Duration(microseconds: 50),
canLoadingText: '松开刷新',
noDataText: '没有更多数据啦',
loadingText:'刷新中',
idleText: '上拉加载',
),
controller: _refreshController,
onRefresh: _onRefresh,
onLoading: _onLoading,
child:ListView.builder(
itemBuilder: (BuildContext ctx,int index){
return Text('text');
},
itemCount: 10,
),
)
);
}
}
}更多推荐



所有评论(0)